VALIDATION_COUNTRYCODE_STANDARD
type: Validation
has resource type: SingleRecord
note: Locations outside of a jurisdiction covered by a country code may have a value in the field dwc:countryCode, the ISO user defined codes include XZ used by the UN for installations on the high seas and recommended in Darwin Core to designate the high seas. Also available in the ISO user defined codes is ZZ, used by Darwin Core and GBIF to mark unknown countries. This Test should accept both XZ and ZZ as COMPLIANT country codes. This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Is the value of dwc:countryCode a valid ISO 3166-1-alpha-2 country code?
has criterion: Standard
issued: 2025-03-07
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
references: country-list
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/20
preferred label: Validation dwc:countryCode Standard for SingleRecord

SingleRecord
type: ResourceType

Conformance
type: DataQualityDimension

Standard
type: Criterion

Information Element ActedUpon dwc:countryCode
type: ActedUpon
composed of: countryCode

iso-3166-country-codes.html
type: BibliographicResource
bibliographic citation: ISO (n.dat.) ISO 3166 Country Codes. https://www.iso.org/iso-3166-country-codes.html

ISO 3166-1 alpha-2
type: BibliographicResource
bibliographic citation: ISO (n.dat) 3166-1 alpha-2. https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2

country-list
type: BibliographicResource
bibliographic citation: DataHub (2018) List of all countries with their two digit codes (ISO 3166-1). https://datahub.io/core/country-list

doc-gg7h-s853
type: BibliographicResource
bibliographic citation: Chapman AD and Wieczorek JR (2020) Georeferencing Best Practices. Copenhagen: GBIF Secretariat. https://doi.org/10.15468/doc-gg7h-s853

ValidationMethod: VALIDATION_COUNTRYCODE_STANDARD with Specification for: VALIDATION_COUNTRYCODE_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L99
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: VALIDATION_COUNTRYCODE_STANDARD
type: Specification
example: dwc:countryCode="GL": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:countryCode is a valid ISO (ISO 3166-1-alpha-2 country codes) value"
example: dwc:countryCode="GRL": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:countryCode is NOT a valid ISO (ISO 3166-1-alpha-2 country codes) value"
has authorities defaults: bdqval:sourceAuthority default = "ISO 3166 Country Codes" {[https://www.iso.org/iso-3166-country-codes.html]} {ISO 3166-1-alpha-2 Country Code search [https://www.iso.org/obp/ui/#search]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the dwc:countryCode is bdqval:Empty; COMPLIANT if dwc:countryCode can be unambiguously interpreted as a valid ISO 3166-1-alpha-2 country code in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the dwc:countryCode is bdqval:Empty; COMPLIANT if dwc:countryCode can be unambiguously interpreted as a valid ISO 3166-1-alpha-2 country code in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "ISO 3166 Country Codes" {[https://www.iso.org/iso-3166-country-codes.html]} {ISO 3166-1-alpha-2 Country Code search [https://www.iso.org/obp/ui/#search]}

VALIDATION_COUNTRY_FOUND
type: Validation
has resource type: SingleRecord
note: Non-country information such as "high seas" will fail this Test (high seas should use dwc:countryCode = "XZ" and have dwc:country empty). Getty Place Types for administrative level "nation" are 81010 nation, 81011 independent sovereign nation, and 81012 independent nation. Multiple values in the dwc:country field (whether to signify on a border or in a list of possibilities) will fail this Test. Locations outside of a jurisdiction covered by a country code should not have a value in the field dwc:countryCode. This Test should find any matches at the Getty "nation" level including internationalized names and historical representations of that nation (where boundaries are same). This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:country occur in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-07
references: index.html
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/21
preferred label: Validation dwc:country Found for SingleRecord

Found
type: Criterion

Information Element ActedUpon dwc:country
type: ActedUpon
composed of: country

index.html
type: BibliographicResource
bibliographic citation: Getty Research Institute (2017) Getty Thesaurus of Geographic Names Online. https://www.getty.edu/research/tools/vocabularies/tgn/index.html

ValidationMethod: VALIDATION_COUNTRY_FOUND with Specification for: VALIDATION_COUNTRY_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L158
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_COUNTRY_FOUND
type: Specification
example: dwc:country="Eswatini": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:country is a valid country name in the bdqval:sourceAuthority"
example: dwc:country="Tasmania": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="Tasmania is not found at the level of national in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:country is bdqval:Empty; COMPLIANT if value of dwc:country is a place type equivalent to administrative entity of "nation" in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:country is bdqval:Empty; COMPLIANT if value of dwc:country is a place type equivalent to administrative entity of "nation" in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}

Default value for bdqval:sourceAuthority:"The Getty Thesaurus of Geographic Names (TGN)"
type: Argument
has argument value: The Getty Thesaurus of Geographic Names (TGN)
has parameter: sourceAuthority

VALIDATION_PHYLUM_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:phylum occur at the rank of Phylum in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/22
preferred label: Validation dwc:phylum Found for SingleRecord

Information Element ActedUpon dwc:phylum
type: ActedUpon
composed of: phylum

39omei
type: BibliographicResource
bibliographic citation: GBIF Secretariat (2023) GBIF Backbone Taxonomy. Checklist dataset. https://doi.org/10.15468/39omei

ValidationMethod: VALIDATION_PHYLUM_FOUND with Specification for: VALIDATION_PHYLUM_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L130
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: iDigBio

Specification for: VALIDATION_PHYLUM_FOUND
type: Specification
example: dwc:phylum="Tracheophyta": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:phylum has an equivalent at the rank of Phylum in the bdqval:sourceAuthority. GBIF.org uses Trachyophyta for the Phylum including ferns"
example: dwc:phylum="Trachyophyta": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:phylum does not have an equivalent at the rank of Phylum in the bdqval:sourceAuthority."
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:phylum is bdqval:Empty; COMPLIANT if the value of dwc:phylum is found as a value at the rank of Phylum in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:phylum is bdqval:Empty; COMPLIANT if the value of dwc:phylum is found as a value at the rank of Phylum in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:minimumDepthInMeters a number less than or equal to the value of dwc:maximumDepthInMeters?
has criterion: Consistent
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/24
preferred label: Validation dwc:minimumDepthInMeters less than dwc:maximumDepthInMeters for SingleRecord

Consistent
type: Criterion

Information Element ActedUpon dwc:minimumDepthInMeters, dwc:maximumDepthInMeters
type: ActedUpon
composed of: minimumDepthInMeters
composed of: maximumDepthInMeters

ValidationMethod: VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH with Specification for: VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L268
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: ALA, GBIF, OBIS

Specification for: VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH
type: Specification
example: dwc:minimumDepthInMeters="0", dwc:maximumDepthInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:minimumDepthInMeters = dwc:maximumDepthInMeters"
example: dwc:minimumDepthInMeters="1", dwc:maximumDepthInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:minimumDepthInMeters > dwc:maximumDepthInMeters"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters or dwc:maximumDepthInMeters is bdqval:Empty, or if either are interpretable as not zero or a positive number; COMPLIANT if the value of dwc:minimumDepthInMeters is less than or equal to the value of dwc:maximumDepthInMeters; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters or dwc:maximumDepthInMeters is bdqval:Empty, or if either are interpretable as not zero or a positive number; COMPLIANT if the value of dwc:minimumDepthInMeters is less than or equal to the value of dwc:maximumDepthInMeters; otherwise NOT_COMPLIANT

AMENDMENT_DATEIDENTIFIED_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: We reference Wikipedia for the ISO standard because the standard documents are not free.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:dateIdentified to a valid ISO date.
issued: 2025-03-07
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/26
preferred label: Amendment dwc:dateIdentified Standard for SingleRecord

Standardized
type: Enhancement

Information Element ActedUpon dwc:dateIdentified
type: ActedUpon
composed of: dateIdentified

ui
type: BibliographicResource
bibliographic citation: ISO (2019) ISO 8601-1:2019(en) Date and time — Representations for information interchange — Part 1: Basic rules. https://www.iso.org/obp/ui/

ISO 8601
type: BibliographicResource
bibliographic citation: Wikipedia (2020) ISO 8601. https://en.wikipedia.org/wiki/ISO_8601

datetime
type: BibliographicResource
bibliographic citation: Library of Congress (2019) Extended Date/Time Format (EDTF). https://www.loc.gov/standards/datetime/

AmendmentMethod: AMENDMENT_DATEIDENTIFIED_STANDARDIZED with Specification Specification for: AMENDMENT_DATEIDENTIFIED_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCOtherDateDQ.java#L300
note: TG2 Amendment TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: Kurator

Specification for: AMENDMENT_DATEIDENTIFIED_STANDARDIZED
type: Specification
example: dwc:dateIdentified="2021-28-10": Response.status=AMENDED, Response.result=dwc:dateIdentified="2021-10-28", Response.comment="dwc:dateIdentified assuming dwc:year, dwc:day and dwc:month"
example: dwc:dateIdentified="21-10-28": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:dateIdentified contains ambiguous values. It could be dd-mm-yy or yy-mm-dd"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:dateIdentified is bdqval:Empty; AMENDED if the value of dwc:dateIdentified is not a properly formatted ISO 8601 date but is unambiguous and altered to be a valid ISO 8601 date; otherwise NOT_AMENDED.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:dateIdentified is bdqval:Empty; AMENDED if the value of dwc:dateIdentified is not a properly formatted ISO 8601 date but is unambiguous and altered to be a valid ISO 8601 date; otherwise NOT_AMENDED.

VALIDATION_FAMILY_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:family occur at the rank of Family in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/28
preferred label: Validation dwc:family Found for SingleRecord

Information Element ActedUpon dwc:family
type: ActedUpon
composed of: family

ValidationMethod: VALIDATION_FAMILY_FOUND with Specification for: VALIDATION_FAMILY_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L171
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: iDigBio

Specification for: VALIDATION_FAMILY_FOUND
type: Specification
example: dwc:family="Agaricaceae": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="bdqval:family has an equivalent at the rank of Family in the bdqval:sourceAuthority"
example: dwc:family="Agaricacae": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="bdqval:family does not have an equivalent at the rank of Family in the Parameterized Source Authority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:family is bdqval:Empty; COMPLIANT if the value of dwc:family is found as a value at the rank of Family in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:family is bdqval:Empty; COMPLIANT if the value of dwc:family is found as a value at the rank of Family in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

ISSUE_ANNOTATION_NOTEMPTY
type: Issue
has resource type: SingleRecord
note: While there is a W3C standard on 'web annotation', there is no TDWG recommendation on how this standard could be applied to annotating Darwin Core records. While implementation of this Test is currently problematic, TG2 considers annotations attached to any aspect of a Darwin Core record justifies this Test as a placeholder in the hope of future developments.
has data quality dimension: Reliability
description: Are there any annotations associated with the record?
has criterion: NotEmpty
issued: 2024-09-17
history note: https://github.com/tdwg/bdq/issues/29
preferred label: Issue Annotation Not Empty for SingleRecord

Reliability
type: DataQualityDimension

NotEmpty
type: Criterion

Information Element Consulted oa:hasTarget
type: Consulted
composed of: hasTarget

urn:…
type: BibliographicResource
bibliographic citation: W3C (2017) Web Annotation Data Model. https://www.w3.org/TR/annotation-model/

urn:…
type: BibliographicResource
bibliographic citation: W3C (2017) Web Annotation Data Model: Annotation. https://www.w3.org/TR/annotation-vocab/#annotation

urn:…
type: BibliographicResource
bibliographic citation: Biodiversity Information Standards (TDWG) (n.dat) Annotations Interest Group. https://www.tdwg.org/community/annotations/

IssueMethod: ISSUE_ANNOTATION_NOTEMPTY with Specification Specification for: ISSUE_ANNOTATION_NOTEMPTY
type: IssueMethod
note: TG2 Issue OTHER Test CORE
history note: Source: ALA, Lee Belbin

Specification for: ISSUE_ANNOTATION_NOTEMPTY
type: Specification
example: bdqval:annotationAlertIf="": Response.status=RUN_HAS_RESULT, Response.result=NOT_ISSUE, Response.comment="bdqval:annotationAlertIf is bdqval:Empty"
example: bdqval:annotationAlertIf="?": Response.status=RUN_HAS_RESULT, Response.result=POTENTIAL_ISSUE, Response.comment="bdqval:annotationAlertIf is bdqval:NotEmpty"
has authorities defaults: bdqval:annotationSystem default = "W3C Web Annotation" {[https://www.w3.org/annotation/]} {"oa:Annotation vocabulary" [https://www.w3.org/TR/annotation-vocab/]},bdqval:annotationAlertIf default = "oa:Annotation with oa:hasTarget having as object any dwciri:term instance that is part of the SingleRecord under Test." {[https://www.w3.org/TR/annotation-vocab/]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:annotationSystem is not available; POTENTIAL_ISSUE if an annotation in the bdqval:annotationSystem exists and has an oa:hasTarget referencing the bdqffdq:SingleRecord under evaluation with matching bdqval:annotationAlertIf criteria; otherwise NOT_ISSUE.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:annotationSystem is not available; POTENTIAL_ISSUE if an annotation in the bdqval:annotationSystem exists and has an oa:hasTarget referencing the bdqffdq:SingleRecord under evaluation with matching bdqval:annotationAlertIf criteria; otherwise NOT_ISSUE. bdqval:annotationSystem default = "W3C Web Annotation" {[https://www.w3.org/annotation/]} {"oa:Annotation vocabulary" [https://www.w3.org/TR/annotation-vocab/]},bdqval:annotationAlertIf default = "oa:Annotation with oa:hasTarget having as object any dwciri:term instance that is part of the SingleRecord under Test." {[https://www.w3.org/TR/annotation-vocab/]}

Default value for bdqval:annotationSystem:"W3C Web Annotation"
type: Argument
has argument value: W3C Web Annotation
has parameter: annotationSystem

Default value for bdqval:annotationAlertIf:"oa:Annotation with oa:hasTarget having as object any dwciri:term instance that is part of the SingleRecord under Test."
type: Argument
has argument value: oa:Annotation with oa:hasTarget having as object any dwciri:term instance that is part of the SingleRecord under Test.
has parameter: annotationAlertIf

VALIDATION_DECIMALLONGITUDE_INRANGE
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:decimalLongitude a number between -180 and 180 inclusive?
has criterion: InRange
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/30
preferred label: Validation dwc:decimalLongitude In Range for SingleRecord

InRange
type: Criterion

Information Element ActedUpon dwc:decimalLongitude
type: ActedUpon
composed of: decimalLongitude

ValidationMethod: VALIDATION_DECIMALLONGITUDE_INRANGE with Specification for: VALIDATION_DECIMALLONGITUDE_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L343
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: ALA, GBIF, OBIS

Specification for: VALIDATION_DECIMALLONGITUDE_INRANGE
type: Specification
example: dwc:decimalLongitude="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:decimalLongitude is in range"
example: dwc:decimalLongitude="181.0554": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:decimalLongitude >180"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLongitude is bdqval:Empty or the value is not a number; COMPLIANT if the value of dwc:decimalLongitude is between -180 and 180 degrees, inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLongitude is bdqval:Empty or the value is not a number; COMPLIANT if the value of dwc:decimalLongitude is between -180 and 180 degrees, inclusive; otherwise NOT_COMPLIANT

MEASURE_VALIDATIONTESTS_NOTCOMPLIANT
type: Measure
has resource type: SingleRecord
note: We have three individual measures for pass (MEASURE_VALIDATIONTESTS_COMPLIANT (45fb49eb-4a1b-4b49-876f-15d5034dfc73)), fail (MEASURE_VALIDATIONTESTS_NOTCOMPLIANT (453844ae-9df4-439f-8e24-c52498eca84a)), and PREREQUISITES_NOT_MET (49a94636-a562-4e6b-803c-665c80628a3d). To get the total number of Tests that were attempted, add all three measures. To get the total number of Tests that ran, add NOT_COMPLIANT (fail) and COMPLIANT (pass).
has data quality dimension: Reliability
description: A count of the number of distinct VALIDATION Tests that have a Response.status="NOT_COMPLIANT" for a given record.
issued: 2024-09-24
history note: https://github.com/tdwg/bdq/issues/31
preferred label: Measure Validation Tests Not Compliant for SingleRecord

Information Element Consulted bdqval:AllValidationTestsRunOnSingleRecord
type: Consulted
composed of: AllValidationTestsRunOnSingleRecord

MeasurementMethod: MEASURE_VALIDATIONTESTS_NOTCOMPLIANT with Specification Specification for: MEASURE_VALIDATIONTESTS_NOTCOMPLIANT
type: MeasurementMethod
note: TG2 Measure NAME SPACE TIME OTHER Test CORE
history note: Source: Lee Belbin

Specification for: MEASURE_VALIDATIONTESTS_NOTCOMPLIANT
type: Specification
example: [Response.status=RUN_HAS_RESULT, Response.result="37", Response.comment="37 VALIDATION Tests had Response.status="NOT_COMPLIANT."]
has expected response: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were attempted to be run; REPORT of the number of Tests of output type VALIDATION run against the record that have Response.result="NOT_COMPLIANT"
description: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were attempted to be run; REPORT of the number of Tests of output type VALIDATION run against the record that have Response.result="NOT_COMPLIANT"

AMENDMENT_COORDINATES_FROM_VERBATIM
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: Transformations between coordinate reference systems should not be made as a part of this Test. Though coordinate precision of the verbatim coordinates could also be interpreted during the process of amending decimal coordinates from verbatim coordinates, that amendment is recommended to be an independent Test. Note that dwc:verbatimLatitude, dwc:verbatimLongitude and dwc:verbatimCoordinates might all be populated, and they may or not be perfectly consistent with each other. An ideal implementation should check for the consistency of these three fields and not amend them if they are inconsistent.
has data quality dimension: Completeness
description: Proposes an amendment to the values of dwc:decimalLatitude, dwc:decimalLongitude, and dwc:geodeticDatum from geographic coordinate information in the verbatim coordinates terms.
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/32
preferred label: Amendment Coordinates from Verbatim for SingleRecord

FilledInFrom
type: Enhancement

Completeness
type: DataQualityDimension

Information Element ActedUpon dwc:decimalLatitude, dwc:decimalLongitude, dwc:geodeticDatum
type: ActedUpon
composed of: decimalLatitude
composed of: decimalLongitude
composed of: geodeticDatum

Information Element Consulted dwc:verbatimCoordinates, dwc:verbatimLatitude, dwc:verbatimLongitude, dwc:verbatimCoordinateSystem, dwc:verbatimSRS
type: Consulted
composed of: verbatimCoordinates
composed of: verbatimLatitude
composed of: verbatimLongitude
composed of: verbatimCoordinateSystem
composed of: verbatimSRS

AmendmentMethod: AMENDMENT_COORDINATES_FROM_VERBATIM with Specification Specification for: AMENDMENT_COORDINATES_FROM_VERBATIM
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L402
note: TG2 Amendment SPACE CODED Test Completeness CORE
history note: Source: ALA

Specification for: AMENDMENT_COORDINATES_FROM_VERBATIM
type: Specification
example: dwc:verbatimLatitude="-23.712", dwc:verbatimLongitude="139.92", dwc:verbatimCoordinates="", dwc:verbatimSRS="EPSG:4326", dwc:verbatimCoordinateSystem="decimal degrees",dwc:decimalLatitude="", dwc:decimalLongitude="": Response.status=FILLED_IN, Response.result=dwc:decimalLatitude="-23.712", dwc:decimalLongitude="139.92", dwc:geodeticDatum="EPSG:4326", Response.comment="Input fields contain interpretable values"
example: dwc:verbatimLatitude="", dwc:verbatimLongitude="", dwc:verbatimCoordinates="54K 0390210 7377243", dwc:verbatimSRS="EPSG:32754", dwc:verbatimCoordinateSystem="decimal degrees", dwc:decimalLatitude="", dwc:decimalLongitude="":: Response.status=NOT_AMENDED, Response.result="", Response.comment="In the wrong coordinate system"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if 1) either dwc:decimalLatitude or dwc:decimalLongitude are bdqval:NotEmpty, or 2) dwc:verbatimCoordinates and one of dwc:verbatimLatitude and dwc:verbatimLongitude are bdqval:Empty; FILLED_IN the values of dwc:decimalLatitude, dwc:decimalLongitude and dwc:geodeticDatum (provided that the dwc:verbatimCoordinates can be unambiguously interpreted as geographic coordinates) from 1) dwc:verbatimLatitude, dwc:verbatimLongitude and dwc:verbatimSRS or 2) dwc:verbatimCoordinates and dwc:verbatimSRS; otherwise NOT_AMENDED.
description: INTERNAL_PREREQUISITES_NOT_MET if 1) either dwc:decimalLatitude or dwc:decimalLongitude are bdqval:NotEmpty, or 2) dwc:verbatimCoordinates and one of dwc:verbatimLatitude and dwc:verbatimLongitude are bdqval:Empty; FILLED_IN the values of dwc:decimalLatitude, dwc:decimalLongitude and dwc:geodeticDatum (provided that the dwc:verbatimCoordinates can be unambiguously interpreted as geographic coordinates) from 1) dwc:verbatimLatitude, dwc:verbatimLongitude and dwc:verbatimSRS or 2) dwc:verbatimCoordinates and dwc:verbatimSRS; otherwise NOT_AMENDED.

VALIDATION_EVENTDATE_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:eventDate?
has criterion: NotEmpty
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/33
preferred label: Validation dwc:eventDate Not Empty for SingleRecord

Information Element ActedUpon dwc:eventDate
type: ActedUpon
composed of: eventDate

ValidationMethod: VALIDATION_EVENTDATE_NOTEMPTY with Specification for: VALIDATION_EVENTDATE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L196
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_EVENTDATE_NOTEMPTY
type: Specification
example: dwc:eventDate="1964-11-01T10:00-0600": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:eventdate is bdqval:NotEmpty"
example: dwc:eventDate="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:eventDate is bdqval:Empty"
has expected response: COMPLIANT if dwc:eventDate is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:eventDate is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_EVENTDATE_INRANGE
type: Validation
has resource type: SingleRecord
note: This Test provides for a default earliest date, which is 1582-11-15 by convention. That date was chosen because ISO 8601-1 asserts that "the use of proleptic Gregorian calendar dates prior are not allowed in ISO 8601-1 without prior agreement of the parties exchanging data", and Darwin Core does not comment on this. Different calendars have been used at different times in different places, and the transcription of an original date in one calendar into dwc:eventDate, where a Gregorian Calendar is assumed, may or may not have been done with the correct translation of the date, and metadata may or not be present to even identify such records. Given the complexity, and ongoing nature of transitions between calendars, we do not advocate using this Test for quality assurance by selecting a transition date and using it as a threshold.
has data quality dimension: Conformance
description: Is the value of dwc:eventDate entirely with the Parameter range?
has criterion: InRange
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/36
preferred label: Validation dwc:eventDate In Range for SingleRecord

ValidationMethod: VALIDATION_EVENTDATE_INRANGE with Specification for: VALIDATION_EVENTDATE_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L2365
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: VertNet

Specification for: VALIDATION_EVENTDATE_INRANGE
type: Specification
example: dwc:eventDate="1962-11-01T10:00-0600": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:eventDate is IN_RANGE"
example: dwc:eventDate="2300-11-01T10:00": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:eventDate is NOT_IN_RANGE"
has authorities defaults: bdqval:earliestValidDate default ="1582-11-15",bdqval:latestValidDate default = "{current year}"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or if the value of dwc:eventDate is not a valid ISO 8601 date; COMPLIANT if the range of dwc:eventDate is entirely within the range bdqval:earliestValidDate to bdqval:latestValidDate, inclusive, otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or if the value of dwc:eventDate is not a valid ISO 8601 date; COMPLIANT if the range of dwc:eventDate is entirely within the range bdqval:earliestValidDate to bdqval:latestValidDate, inclusive, otherwise NOT_COMPLIANT bdqval:earliestValidDate default ="1582-11-15",bdqval:latestValidDate default = "{current year}"

Default value for bdqval:earliestValidDate:"1582-11-15"
type: Argument
has argument value: 1582-11-15
has parameter: earliestValidDate

Default value for bdqval:latestValidDate:"{current year}"
type: Argument
has argument value: {current year}
has parameter: latestValidDate

VALIDATION_LICENSE_STANDARD
type: Validation
has resource type: SingleRecord
note: The license at the record level might be derived from the license of the dataset from which the record is retrieved. This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters. The canonical form of the Creative Commons license IRI has nothing after the version (e.g., https://creativecommons.org/licenses/by/4.0/), but may be followed by deed or legalcode e.g. https://creativecommons.org/licenses/by/4.0/deed and this may be followed by a language code. However, only some two-letter language codes have translations, and some translations are identified by a longer string than the two-letter language code. Errors in the language code, or specifying a language code for which a translation doesn't exist returns a 404 error instead of redirecting to the more general license IRI. As of 2024-02-28 deed.mi doesn't exist yet, but legalcode.mi does.
has data quality dimension: Conformance
description: Does the value of dcterms:license occur in bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: LicenseDocument
references: licenses
history note: https://github.com/tdwg/bdq/issues/38
preferred label: Validation dcterms:license Standard for SingleRecord

Information Element ActedUpon dcterms:license
type: ActedUpon
composed of: license

LicenseDocument
type: BibliographicResource
bibliographic citation: Dublin Core (2020) Dublin Core Metadata Initiative. License Document. https://www.dublincore.org/specifications/dublin-core/dcmi-terms/terms/LicenseDocument/

licenses
type: BibliographicResource
bibliographic citation: Creative Commons (n.dat.) About the Licenses. https://creativecommons.org/licenses/

ValidationMethod: VALIDATION_LICENSE_STANDARD with Specification for: VALIDATION_LICENSE_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L635
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: John Wieczorek

Specification for: VALIDATION_LICENSE_STANDARD
type: Specification
example: dcterms:license="https://creativecommons.org/licenses/by/4.0/": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT,Response.comment="dcterms:license matches a term in the bdqval:sourceAuthority"
example: dcterms:license="GPL": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dcterms:license does not match a term in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Creative Commons 4.0 Licenses or CC0" {[https://creativecommons.org/]} { Regular Expression ^(http(s){0,1}://creativecommons.org/licenses/(by|by-sa|by-nc|by-nc-sa|by-nd|by-nc-nd)/4.0/((deed|legalcode)(.(id|eu|da|de|en|es|fr|fy|hr|it|lv|lt|mi|ni|no|pl|pt|ro|si|fi|sv|tr|cs|el|ru|uk|ar|jp|zh-hans|zh-hant|ko)){0,1})|(http(s){0,1}://creativecommons.org/publicdomain/zero/1.0/((deed|legalcode)(.(id|eu|da|de|en|es|fr|fy|hr|it|lv|lt|ni|no|pl|pt|ro|si|fi|sv|tr|cs|el|ru|uk|ar|jp|zh-hans|zh-hant|ko)){0,1})))$ }
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dcterms:license is bdqval:Empty; COMPLIANT if the value of the term dcterms:license is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dcterms:license is bdqval:Empty; COMPLIANT if the value of the term dcterms:license is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "Creative Commons 4.0 Licenses or CC0" {[https://creativecommons.org/]} { Regular Expression ^(http(s){0,1}://creativecommons.org/licenses/(by|by-sa|by-nc|by-nc-sa|by-nd|by-nc-nd)/4.0/((deed|legalcode)(.(id|eu|da|de|en|es|fr|fy|hr|it|lv|lt|mi|ni|no|pl|pt|ro|si|fi|sv|tr|cs|el|ru|uk|ar|jp|zh-hans|zh-hant|ko)){0,1})|(http(s){0,1}://creativecommons.org/publicdomain/zero/1.0/((deed|legalcode)(.(id|eu|da|de|en|es|fr|fy|hr|it|lv|lt|ni|no|pl|pt|ro|si|fi|sv|tr|cs|el|ru|uk|ar|jp|zh-hans|zh-hant|ko)){0,1})))$ }

Default value for bdqval:sourceAuthority:"Creative Commons 4.0 Licenses or CC0"
type: Argument
has argument value: Creative Commons 4.0 Licenses or CC0
has parameter: sourceAuthority

VALIDATION_MINELEVATION_INRANGE
type: Validation
has resource type: SingleRecord
note: We have rounded up the Parameter values. We are aware of sub-ice elevations in Antarctica to -3,500m and possible sampling in the atmosphere above the elevation of the top of Mt Everest should fail this Test if captured as elevation rather than as distanceAboveSurfaceInMeters. Elevations below the maximum elevation yet above the local surface will be false positives.
has data quality dimension: Conformance
description: Is the value of dwc:minimumElevationInMeters within the Parameter range?
has criterion: InRange
issued: 2025-03-07
references: List of elevation extremes by country
references: Extreme points of Antarctica
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/39
preferred label: Validation dwc:minimumElevationInMeters In Range for SingleRecord

Information Element ActedUpon dwc:minimumElevationInMeters
type: ActedUpon
composed of: minimumElevationInMeters

List of elevation extremes by country
type: BibliographicResource
bibliographic citation: Wikipedia (2020) List of elevations extremes by country. https://en.wikipedia.org/wiki/List_of_elevation_extremes_by_country_

Extreme points of Antarctica
type: BibliographicResource
bibliographic citation: Wikipedia (2020) Extreme points of Antarctica. https://en.wikipedia.org/wiki/Extreme_points_of_Antarctica

ValidationMethod: VALIDATION_MINELEVATION_INRANGE with Specification for: VALIDATION_MINELEVATION_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L582
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_MINELEVATION_INRANGE
type: Specification
example: dwc:minimumElevationInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:minimumElevationInMeters is IN_RANGE"
example: dwc:minimumElevationInMeters="-500": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:minimumElevationInMeters is NOT_IN_RANGE (<-430)"
has authorities defaults: bdqval:minimumValidElevationInMeters default = "-430",bdqval:maximumValidElevationInMeters default = "8850"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumElevationInMeters is bdqval:Empty or the value is not a number; COMPLIANT if the value of dwc:minimumElevationInMeters is within the range of bdqval:minimumValidElevationInMeters to bdqval:maximumValidElevationInMeters inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumElevationInMeters is bdqval:Empty or the value is not a number; COMPLIANT if the value of dwc:minimumElevationInMeters is within the range of bdqval:minimumValidElevationInMeters to bdqval:maximumValidElevationInMeters inclusive; otherwise NOT_COMPLIANT bdqval:minimumValidElevationInMeters default = "-430",bdqval:maximumValidElevationInMeters default = "8850"

Default value for bdqval:minimumValidElevationInMeters:"-430"
type: Argument
has argument value: -430
has parameter: minimumValidElevationInMeters

Default value for bdqval:maximumValidElevationInMeters:"8850"
type: Argument
has argument value: 8850
has parameter: maximumValidElevationInMeters

VALIDATION_LOCATION_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: Only fails if all of the relevant fields of the Darwin Core Location class are EMPTY or do not exist. Relevant Darwin Core fields include dwc:locationID, dwc:higherGeographyID, dwc:higherGeography, dwc:continent, dwc:waterBody, dwc:islandGroup, dwc:island, dwc:country, dwc:countryCode, dwc:stateProvince, dwc:county, dwc:municipality, dwc:locality, dwc:verbatimLocality, dwc:decimalLatitude, dwc:decimalLongitude, dwc:verbatimCoordinates, dwc:verbatimLatitude, dwc:verbatimLongitude, dwc:footprintWKT. Elevation and/or depth alone are deemed insufficient to meaningfully locate a position on the earth.
has data quality dimension: Completeness
description: Is there a value in any of the Darwin Core spatial terms that could specify a location?
has criterion: NotEmpty
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/40
preferred label: Validation dcterms:Location Not Empty for SingleRecord

urn:…
type: ActedUpon
composed of: higherGeographyID
composed of: higherGeography
composed of: continent
composed of: country
composed of: countryCode
composed of: stateProvince
composed of: county
composed of: municipality
composed of: waterBody
composed of: island
composed of: islandGroup
composed of: locality
composed of: locationID
composed of: verbatimLocality
composed of: decimalLatitude
composed of: decimalLongitude
composed of: verbatimCoordinates
composed of: verbatimLatitude
composed of: verbatimLongitude
composed of: footprintWKT
label: Information Element ActedUpon dwc:higherGeographyID, dwc:higherGeography, dwc:continent, dwc:country, dwc:countryCode, dwc:stateProvince, dwc:county, dwc:municipality, dwc:waterBody, dwc:island, dwc:islandGroup, dwc:locality, dwc:locationID, dwc:verbatimLocality, dwc:decimalLatitude, dwc:decimalLongitude, dwc:verbatimCoordinates, dwc:verbatimLatitude, dwc:verbatimLongitude, dwc:footprintWKT

ValidationMethod: VALIDATION_LOCATION_NOTEMPTY with Specification for: VALIDATION_LOCATION_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L672
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: Lee Belbin

Specification for: VALIDATION_LOCATION_NOTEMPTY
type: Specification
example: dwc:locationID="https://opencontext.org/subjects/e54377f7-4452-4315-b676-40679b10c4d9", dwc:higherGeographyID="", dwc:higherGeography="",dwc:continent="", dwc:waterBody="", dwc:islandGroup="", dwc:island="", dwc:country="", dwc:countryCode="", dwc:stateProvince="", dwc:county="", dwc:municipality="", dwc:locality="", dwc:verbatimLocality="", dwc:decimalLatitude="", dwc:decimalLongitude="", dwc:coordinateUncertaintyInMeters="", dwc:geodeticDatum="", dwc:verbatimCoordinates="", dwc:verbatimLatitude="", dwc:verbatimLongitude="", dwc:footprintWKT="": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:LocationID is bdqval:NotEmpty"
example: dwc:locationID="", dwc:higherGeographyID="", dwc:higherGeography="", dwc:continent="", dwc:waterBody="", dwc:islandGroup="", dwc:island="", dwc:country="", dwc:countryCode="", dwc:stateProvince="", dwc:county="", dwc:municipality="", dwc:locality="", dwc:verbatimLocality="", dwc:decimalLatitude="", dwc:decimalLongitude="", dwc:coordinateUncertaintyInMeters="", dwc:geodeticDatum="", dwc:verbatimCoordinates="", dwc:verbatimLatitude="", dwc:verbatimLongitude="", dwc:footprintWKT="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="All location fields are bdqval:Empty"
has expected response: COMPLIANT if at least one term needed to determine the location of the entity exists and is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if at least one term needed to determine the location of the entity exists and is bdqval:NotEmpty; otherwise NOT_COMPLIANT

AMENDMENT_DCTYPE_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: dc:type holds literals (e.g. PhysicalObject), while dcterms:type holds an IRI for the resource (e.g. http://purl.org/dc/dcmitype/PhysicalObject), see the Darwin Core RDF guide https://dwc.tdwg.org/rdf/#32-imported-dublin-core-terms-for-which-only-literal-objects-are-appropriate-normative. Implementations of this Amendment are expected be able to amend IRI values to the literals, as well as removing leading/trailing whitespace and correcting case errors in the literal.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dc:type using the DCMI type vocabulary.
issued: 2025-03-07
references: dcmi-type-vocabulary
history note: https://github.com/tdwg/bdq/issues/41
preferred label: Amendment dc:type Standard for SingleRecord

Information Element ActedUpon dc:type
type: ActedUpon
composed of: type

dcmi-type-vocabulary
type: BibliographicResource
bibliographic citation: Dublin Core (2012) DCMI Type Vocabulary. https://www.dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/

AmendmentMethod: AMENDMENT_DCTYPE_STANDARDIZED with Specification Specification for: AMENDMENT_DCTYPE_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L724
note: TG2 Amendment OTHER CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: VertNet

Specification for: AMENDMENT_DCTYPE_STANDARDIZED
type: Specification
example: dc:type="evnt": Response.status=AMENDED, Response.result=dc:type="Event", Response.comment="dc:type contains an interpretable value"
example: dc:type="X": Response.status=NOT_AMENDED, Response.result="", Response.comment="dc:type contains an uninterpretable value"
has authorities defaults: bdqval:sourceAuthority = "DCMI Type Vocabulary" {[http://purl.org/dc/terms/DCMIType]} {"DCMI Type Vocabulary List of Terms" [https://www.dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/2010-10-11/]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dc:type is bdqval:Empty; AMENDED the value of dc:type if it can be unambiguously interpreted as a term name in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dc:type is bdqval:Empty; AMENDED the value of dc:type if it can be unambiguously interpreted as a term name in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority = "DCMI Type Vocabulary" {[http://purl.org/dc/terms/DCMIType]} {"DCMI Type Vocabulary List of Terms" [https://www.dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/2010-10-11/]}

VALIDATION_COUNTRY_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: Country is expected to be either bdqval:Empty or, ideally, have a value of "High seas" or an agreed equivalent if material comes from the high seas, or from those portions of Antarctica outside of any sovereign nation.
has data quality dimension: Completeness
description: Is there a value in dwc:country?
has criterion: NotEmpty
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/42
preferred label: Validation dwc:country Not Empty for SingleRecord

Information Element Consulted dwc:countryCode
type: Consulted
composed of: countryCode

ValidationMethod: VALIDATION_COUNTRY_NOTEMPTY with Specification for: VALIDATION_COUNTRY_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L747
note: TG2 Validation SPACE CODED Test Completeness CORE

Specification for: VALIDATION_COUNTRY_NOTEMPTY
type: Specification
example: dwc:country="Eswatini": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:country is bdqval:NotEmpty"
example: dwc:country="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:country is bdqval:Empty"
has expected response: COMPLIANT if dwc:country is bdqval:NotEmpty or dwc:countryCode has a value of "XZ" and either dwc:country is bdqval:Empty or has a value of "High seas"; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:country is bdqval:NotEmpty or dwc:countryCode has a value of "XZ" and either dwc:country is bdqval:Empty or has a value of "High seas"; otherwise NOT_COMPLIANT

VALIDATION_SCIENTIFICNAME_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to detect errors in the scientific name but is dependent on the abilities of the parsing of the bdqval:sourceAuthority. For research users of biodiversity data doing quality assurance, VALIDATION_TAXON_UNAMBIGUOUS (4c09f127-737b-4686-82a0-7c8e30841590) handles their needs, but for curators of datasets doing quality control, this Test provides a specific subset of targeted data cleaning, making it a valuable Test to include for the quality control case.
has data quality dimension: Conformance
description: Is there a match of the contents of dwc:scientificName with the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/46
preferred label: Validation dwc:scientificName Found for SingleRecord

Information Element ActedUpon dwc:scientificName
type: ActedUpon
composed of: scientificName

ValidationMethod: VALIDATION_SCIENTIFICNAME_FOUND with Specification for: VALIDATION_SCIENTIFICNAME_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L212
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA

Specification for: VALIDATION_SCIENTIFICNAME_FOUND
type: Specification
example: dwc:scientificName="Eucalyptus camaldulensis": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificName found in the bdqval:sourceAuthority"
example: dwc:scientificName="Capulus intort": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificName was not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificName is bdqval:Empty; COMPLIANT if there is a match of the contents of dwc:scientificName in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificName is bdqval:Empty; COMPLIANT if there is a match of the contents of dwc:scientificName in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_OCCURRENCEID_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:occurrenceID?
has criterion: NotEmpty
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/47
preferred label: Validation dwc:occurrenceID Not Empty for SingleRecord

Information Element ActedUpon dwc:occurrenceID
type: ActedUpon
composed of: occurrenceID

ValidationMethod: VALIDATION_OCCURRENCEID_NOTEMPTY with Specification for: VALIDATION_OCCURRENCEID_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L173
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: VertNet

Specification for: VALIDATION_OCCURRENCEID_NOTEMPTY
type: Specification
example: dwc:occurrenceID="https://www.inaturalist.org/observations/43047701": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:occurrenceID conforms to GUID structure"
example: dwc:occurrenceID="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:occurrenceID is bdqval:Empty"
has expected response: COMPLIANT if dwc:occurrenceID is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:occurrenceID is bdqval:NotEmpty; otherwise NOT_COMPLIANT

AMENDMENT_COUNTRYCODE_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: This Test supports conformance with the recommendation in the comment on dwc:countryCode: "Recommended best practice is to use an ISO 3166-1-alpha-2 country code." Darwin Core also recommends the use of the XZ for high seas and ZZ for unknown. Three letter codes should be amended to the matching two-letter code.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:countryCode if it can be interpreted as an ISO 3166-1-alpha-2 country code.
issued: 2025-03-07
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
references: country-list
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/48
preferred label: Amendment dwc:countryCode Standard for SingleRecord

AmendmentMethod: AMENDMENT_COUNTRYCODE_STANDARDIZED with Specification Specification for: AMENDMENT_COUNTRYCODE_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L931
note: TG2 Amendment SPACE CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE

Specification for: AMENDMENT_COUNTRYCODE_STANDARDIZED
type: Specification
example: dwc:countryCode="Australia": Response.status=AMENDED, Response.result=dwc:countryCode="AU", Response.comment="dwc:countryCode contains an interpretable value"
example: dwc:countryCode="Aust.": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:countryCode contains an ambiguous value"
has authorities defaults: bdqval:sourceAuthority default = "ISO 3166-1-alpha-2" {[https://www.iso.org/iso-3166-country-codes.html]} {ISO 3166-1-alpha-2 Country Code search [https://www.iso.org/obp/ui/#search]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dwc:countryCode is bdqval:Empty; AMENDED the value of dwc:countryCode if it can be unambiguously interpreted to a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dwc:countryCode is bdqval:Empty; AMENDED the value of dwc:countryCode if it can be unambiguously interpreted to a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "ISO 3166-1-alpha-2" {[https://www.iso.org/iso-3166-country-codes.html]} {ISO 3166-1-alpha-2 Country Code search [https://www.iso.org/obp/ui/#search]}

VALIDATION_YEAR_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:year?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/49
preferred label: Validation dwc:year Not Empty for SingleRecord

Information Element ActedUpon dwc:year
type: ActedUpon
composed of: year

ValidationMethod: VALIDATION_YEAR_NOTEMPTY with Specification for: VALIDATION_YEAR_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L231
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_YEAR_NOTEMPTY
type: Specification
example: dwc:year="1949": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:year is bdqval:NotEmpty"
example: dwc:year="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:year is bdqval:Empty"
has expected response: COMPLIANT if dwc:year is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:year is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT
type: Validation
has resource type: SingleRecord
note: dwc:coordinatePrecision and dwc:coordinateUncertaintyInMeters (if present) imply a potential displacement of the provided coordinates. These two terms can be considered spatial buffers. Likewise, country polygons cannot be 100% accurate at all scales (Dooley 2005), so a spatial buffer of the country boundaries is justified. When dwc:countryCode=XZ (for High Seas), the coordinate should fall into a marine region out side of the EEZ of any country. Taking the spatial buffers into account does however greatly complicate both the logic and the implementation of such Tests. The same applies to potential conversion of the Spatial Reference System (SRS) of dwc:decimalLatitude and dwc:decimalLongitude to the SRS used in the bdqval:sourceAuthority.
has data quality dimension: Consistency
description: Do the geographic coordinates fall on or within the boundaries of the territory given in dwc:countryCode or its Exclusive Economic Zone?
has criterion: Consistent
issued: 2025-03-07
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
references: https://doi.org/10.14284/628
references: 12 introducing natural earth data naturaleart.pdf
references: v5.1.2
references: 10m-admin-1-states-provinces
references: doc-gg7h-s853
references: Contents
history note: https://github.com/tdwg/bdq/issues/50
preferred label: Validation Coordinates dwc:countryCode Consistent for SingleRecord

Consistency
type: DataQualityDimension

Information Element ActedUpon dwc:countryCode, dwc:decimalLatitude, dwc:decimalLongitude
type: ActedUpon
composed of: countryCode
composed of: decimalLatitude
composed of: decimalLongitude

https://doi.org/10.14284/628
type: BibliographicResource
bibliographic citation: Flanders Marine Institute (2023) Maritime Boundaries Geodatabase, version 12. Available online at https://www.marineregions.org/. https://doi.org/10.14284/628

12 introducing natural earth data naturaleart.pdf
type: BibliographicResource
bibliographic citation: Kelso NV and Patterson T (2010) Introducing Natural Earth data—Naturalearthdata.com. Geographica Technica. Special issue, 2010 pp 82–89. https://technicalgeography.org/pdf/sp_i_2010/12_introducing_natural_earth_data__naturaleart.pdf

v5.1.2
type: BibliographicResource
bibliographic citation: Natural Earth (2022) Natural Earth Free vector and raster map data at 1:10m, 1:50m, and 1:110m scales. v5.1.2. https://www.naturalearthdata.com/,https://github.com/nvkelso/natural-earth-vector/releases/tag/v5.1.2

10m-admin-1-states-provinces
type: BibliographicResource
bibliographic citation: Natural Earth (2022) Admin 1 – States, provinces. v5.1.1 2022-05-12. https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/

Contents
type: BibliographicResource
bibliographic citation: Dooley, JF Jnr. (2005) An inventory and comparison of globally consistent geospatial databases and libraries. Rome: FAO. http://www.fao.org/3/a0118e/a0118e00.htm#Contents

ValidationMethod: VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT with Specification for: VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1005
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD Parameterized CORE
history note: Source: ALA, GBIF, iDigBio

Specification for: VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT
type: Specification
example: dwc:countryCode="AR", dwc:decimalLatitude="-41.0525925872862", dwc:decimalLongitude="-71.5310546742521": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="Coordinates match dwc:countryCode"
example: dwc:countryCode="CL", dwc:decimalLatitude="-41.0525925872862", dwc:decimalLongitude="-71.5310546742521": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="Coordinates are in Argentina, not Chile"
example: dwc:countryCode="ZX", dwc:decimalLatitude="-41.0525925872862", dwc:decimalLongitude="-71.5310546742521": Response.status=INTERNAL_PREREQUISITES_NOT_MET, Response.comment="Input field contains invalid values - ZX is not a valid ISO 3166-1-alpha-2 country code"
has authorities defaults: bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]},bdqval:spatialBufferInMeters default = "3000"
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if one or more of dwc:decimalLatitude, dwc:decimalLongitude, or dwc:countryCode are bdqval:Empty or invalid; COMPLIANT if the geographic coordinates fall on or within the boundary defined by the union of the boundary of the country from dwc:countryCode plus it's Exclusive Economic Zone as found in the bdqval:sourceAuthority, if any, plus an exterior buffer given by bdqval:spatialBufferInMeters; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if one or more of dwc:decimalLatitude, dwc:decimalLongitude, or dwc:countryCode are bdqval:Empty or invalid; COMPLIANT if the geographic coordinates fall on or within the boundary defined by the union of the boundary of the country from dwc:countryCode plus it's Exclusive Economic Zone as found in the bdqval:sourceAuthority, if any, plus an exterior buffer given by bdqval:spatialBufferInMeters; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]},bdqval:spatialBufferInMeters default = "3000"

Default value for bdqval:sourceAuthority:"10m-admin-1 boundaries UNION with Exclusive Economic Zones"
type: Argument
has argument value: 10m-admin-1 boundaries UNION with Exclusive Economic Zones
has parameter: sourceAuthority

Default value for bdqval:spatialBufferInMeters:"3000"
type: Argument
has argument value: 3000
has parameter: spatialBufferInMeters

VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Validation
has resource type: SingleRecord
note: dwc:coordinatePrecision and dwc:coordinateUncertaintyInMeters (if present) imply a potential displacement of the provided coordinates. These two terms can be considered spatial buffers. Likewise, country polygons cannot be 100% accurate at all scales (Dooley 2005), so a spatial buffer of the country boundaries is justified. Taking the spatial buffers into account does however greatly complicate both the logic and the implementation of such Tests. The same applies to potential conversion of the Spatial Reference System (SRS) of dwc:decimalLatitude and dwc:decimalLongitude to the SRS used in the bdqval:sourceAuthority. Note that in the current implementation Tests treat "brackish" in WoRMS as both marine and terrestrial. Note that both bdqval:taxonIsMarine and bdqval:geospatialLand are bdqval:sourceAuthorities, but as they form two parameters, distinct names are used for them.
has data quality dimension: Consistency
description: Does the marine/non-marine biome of a taxon from the bdqval:sourceAuthority match the biome at the location given by the coordinates?
has criterion: Consistent
issued: 2025-03-07
references: www.marinespecies.org
references: www.irmng.org
references: 12 introducing natural earth data naturaleart.pdf
references: obis.org
references: doc-gg7h-s853
references: Contents
references: 10m-admin-1-states-provinces
references: v5.1.2
references: 10m-minor-islands
references: geocoding-reverse
history note: https://github.com/tdwg/bdq/issues/51
preferred label: Validation Coordinates Terrestrial Marine for SingleRecord

Information Element ActedUpon dwc:decimalLatitude, dwc:decimalLongitude
type: ActedUpon
composed of: decimalLatitude
composed of: decimalLongitude

Information Element Consulted dwc:scientificName
type: Consulted
composed of: scientificName

www.marinespecies.org
type: BibliographicResource
bibliographic citation: WoRMS (2019) WoRMS - World Register of Marine Species. https://www.marinespecies.org/

www.irmng.org
type: BibliographicResource
bibliographic citation: Rees T (compiler) (2024) Interim Register of Marine and Nonmarine Genera (IRMNG) VLIZ, Belgium. https://www.irmng.org/

obis.org
type: BibliographicResource
bibliographic citation: OBIS (2024) Ocean Biodiversity Information System (OBIS). https://obis.org/

10m-minor-islands
type: BibliographicResource
bibliographic citation: Natural Earth (2009) Minor Islands. https://www.naturalearthdata.com/downloads/10m-physical-vectors/10m-minor-islands/

geocoding-reverse
type: BibliographicResource
bibliographic citation: Google Maps Platform (2020) Reverse Geocoding API. https://developers.google.com/maps/documentation/javascript/examples/geocoding-reverse

ValidationMethod: VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT with Specification for: VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L3198
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: ALA, OBIS

Specification for: VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Specification
example: dwc:decimalLatitude="-41.0525925872862", dwc:decimalLongitude="-71.5310546742521", dwc:scientificName="Aegla neuquensis": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="The species is freshwater aquatic and the coordinates fall in a lake and thus COMPLIANT"
example: dwc:decimalLatitude="20.0", dwc:decimalLongitude="-30.0", dwc:scientificName="Viviparus contectus (Millet, 1813)": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificName is non-marine according to dwc:taxonIsMarine but coordinates are marine"
has authorities defaults: bdqval:taxonIsMarine default = "World Register of Marine Species (WoRMS)" {[https://www.marinespecies.org/]} {Web service [https://www.marinespecies.org/aphia.php?p=webservice]},bdqval:geospatialLand default = "Union of NaturalEarth 10m-physical-vectors for Land and NaturalEarth Minor Islands" {[https://naciscdn.org/naturalearth/10m/physical/ne_10m_land.zip], [https://naciscdn.org/naturalearth/10m/physical/ne_10m_minor_islands.zip]},bdqval:spatialBufferInMeters default = "3000",bdqval:assumptionOnUnknownBiome default = "noassumption"
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if either bdqval:taxonIsMarine or bdqval:geospatialLand are not available; INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:scientificName is bdqval:Empty or (2) the values of dwc:decimalLatitude or dwc:decimalLongitude are bdqval:Empty or (3) if bdqval:assumptionOnUnknownBiome is noassumption and the marine/nonmarine status of the taxon is not interpretable from bdqval:taxonIsMarine; COMPLIANT if (1) the taxon marine/nonmarine status from bdqval:taxonIsMarine matches the marine/nonmarine status of dwc:decimalLatitude and dwc:decimalLongitude on the boundaries given by bdqval:geospatialLand plus an exterior buffer given by bdqval:spatialBufferInMeters or (2) if the marine/nonmarine status of the taxon is not interpretable from bdqval:taxonIsMarine and bdqval:assumptionOnUnknownBiome matches the marine/nonmarine status of dwc:decimalLatitude and dwc:decimalLongitude on the boundaries given by bdqval:geospatialLand plus an exterior buffer given by bdqval:spatialBufferInMeters; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if either bdqval:taxonIsMarine or bdqval:geospatialLand are not available; INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:scientificName is bdqval:Empty or (2) the values of dwc:decimalLatitude or dwc:decimalLongitude are bdqval:Empty or (3) if bdqval:assumptionOnUnknownBiome is noassumption and the marine/nonmarine status of the taxon is not interpretable from bdqval:taxonIsMarine; COMPLIANT if (1) the taxon marine/nonmarine status from bdqval:taxonIsMarine matches the marine/nonmarine status of dwc:decimalLatitude and dwc:decimalLongitude on the boundaries given by bdqval:geospatialLand plus an exterior buffer given by bdqval:spatialBufferInMeters or (2) if the marine/nonmarine status of the taxon is not interpretable from bdqval:taxonIsMarine and bdqval:assumptionOnUnknownBiome matches the marine/nonmarine status of dwc:decimalLatitude and dwc:decimalLongitude on the boundaries given by bdqval:geospatialLand plus an exterior buffer given by bdqval:spatialBufferInMeters; otherwise NOT_COMPLIANT bdqval:taxonIsMarine default = "World Register of Marine Species (WoRMS)" {[https://www.marinespecies.org/]} {Web service [https://www.marinespecies.org/aphia.php?p=webservice]},bdqval:geospatialLand default = "Union of NaturalEarth 10m-physical-vectors for Land and NaturalEarth Minor Islands" {[https://naciscdn.org/naturalearth/10m/physical/ne_10m_land.zip], [https://naciscdn.org/naturalearth/10m/physical/ne_10m_minor_islands.zip]},bdqval:spatialBufferInMeters default = "3000",bdqval:assumptionOnUnknownBiome default = "noassumption"

Default value for bdqval:taxonIsMarine:"World Register of Marine Species (WoRMS)"
type: Argument
has argument value: World Register of Marine Species (WoRMS)
has parameter: taxonIsMarine

Default value for bdqval:geospatialLand:"Union of NaturalEarth 10m-physical-vectors for Land and NaturalEarth Minor Islands"
type: Argument
has argument value: Union of NaturalEarth 10m-physical-vectors for Land and NaturalEarth Minor Islands
has parameter: geospatialLand

Default value for bdqval:spatialBufferInMeters:"3000"
type: Argument
has argument value: 3000
has parameter: spatialBufferInMeters

Default value for bdqval:assumptionOnUnknownBiome:"noassumption"
type: Argument
has argument value: noassumption
has parameter: assumptionOnUnknownBiome

AMENDMENT_EVENT_FROM_EVENTDATE
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: Only fields that are empty will be have changes proposed, and only if dwc:eventDate has a valid ISO 8601-1 date. The dwc:eventDate is the canonical form of the event date (it is the first trusted form). If event date does not contain a range,dwc:startDayOfYear = dwc:endDayOfYear. Time (as compared to date) is not deemed a CORE component. Note, see sequencing Tests section of standards documents, run this amendment after any other amendment that may affect dwc:eventDate
has data quality dimension: Completeness
description: Proposes an amendment to values in any of dwc:year, dwc:month, dwc:day, dwc:startDayOfYear or dwc:endDayOfYear from the content of dwc:eventDate.
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/52
preferred label: Amendment dwc:Event from dwc:eventDate for SingleRecord

Information Element ActedUpon dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear
type: ActedUpon
composed of: year
composed of: month
composed of: day
composed of: startDayOfYear
composed of: endDayOfYear

Information Element Consulted dwc:eventDate
type: Consulted
composed of: eventDate

AmendmentMethod: AMENDMENT_EVENT_FROM_EVENTDATE with Specification Specification for: AMENDMENT_EVENT_FROM_EVENTDATE
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L2073
note: TG2 Amendment TIME CODED Test Completeness ISO/DCMI STANDARD CORE
history note: Source: VertNet

Specification for: AMENDMENT_EVENT_FROM_EVENTDATE
type: Specification
example: dwc:eventDate="2023-01-26", dwc:year="2023", dwc:month="", dwc:day="", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=FILLED_IN, Response.result=dwc:month="1", dwc:day="26", dwc:startDayOfYear="26", dwc:endDayOfYear="26", Response.comment="dwc:month, dwc:day, dwc:startDayOfyear and dwc:endDayOfYear filled in from dwc:eventDate"
example: dwc:eventDate="2023",dwc:year="2023", dwc:month="", dwc:day="", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=NOT_AMENDED, Response.result=, Response.comment="No amendments possible"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or contains an invalid value according to ISO 8601; FILLED_IN if any of (1) dwc:day from dwc:eventDate if dwc:day is bdqval:Empty and dwc:eventDate has a precision of a day or finer and is within a single day, (2) dwc:month from dwc:eventDate if dwc:month is bdqval:Empty and dwc:eventDate has a precision of a single month or finer and is within a single month, (3) dwc:year from dwc:eventDate if dwc:year is bdqval:Empty and dwc:eventDate has a precision of a single year or finer and is within a single year, (4) dwc:startDayOfYear and dwc:endDayOfYear if they are bdqval:Empty and dwc:eventDate has a precision of a day or better; otherwise NOT_AMENDED.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or contains an invalid value according to ISO 8601; FILLED_IN if any of (1) dwc:day from dwc:eventDate if dwc:day is bdqval:Empty and dwc:eventDate has a precision of a day or finer and is within a single day, (2) dwc:month from dwc:eventDate if dwc:month is bdqval:Empty and dwc:eventDate has a precision of a single month or finer and is within a single month, (3) dwc:year from dwc:eventDate if dwc:year is bdqval:Empty and dwc:eventDate has a precision of a single year or finer and is within a single year, (4) dwc:startDayOfYear and dwc:endDayOfYear if they are bdqval:Empty and dwc:eventDate has a precision of a day or better; otherwise NOT_AMENDED.

AMENDMENT_COORDINATES_TRANSPOSED
type: Amendment
has resource type: SingleRecord
has enhancement: Transposed
note: The dwc:geodeticDatum is not necessary for this Test. The maximum positional shift between any geographic coordinate reference system and WGS84 is less than 6 km, so any hemisphere Test that relies on a country code for consistency would not be affected by the potential shift. The prior VALIDATION for this Test is VALIDATION_COORDINATE_COUNTRYCODE_CONSISTENT (adb27d29-9f0d-4d52-b760-a77ba57a69c9).
has data quality dimension: Consistency
description: Proposes an amendment transposing or changing the signs of dwc:decimalLatitude and/or dwc:decimalLongitude to align the location with the dwc:countryCode.
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/54
preferred label: Amendment Coordinates Transposed for SingleRecord

Transposed
type: Enhancement

AmendmentMethod: AMENDMENT_COORDINATES_TRANSPOSED with Specification Specification for: AMENDMENT_COORDINATES_TRANSPOSED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L3473
note: TG2 Amendment SPACE CODED Test Consistency CORE
history note: Source: iDigBio, GBIF, BISON, FP, Kurator, ALA

Specification for: AMENDMENT_COORDINATES_TRANSPOSED
type: Specification
example: dwc:decimalLatitude="25.46", dwc:decimalLongitude="135.87", dwc:countryCode="AU": Response.status=AMENDED, Response.result=dwc:decimalLatitude="-25.46", dwc:decimalLongitude="135.87", Response.comment="dwc:decimalLatitude sign reversed to fit dwc:countryCode=AU"
example: dwc:decimalLatitude="25.46", dwc:decimalLongitude="135.87", dwc:countryCode="AX": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:countryCode is uninterpretable"
has authorities defaults: bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]}
has expected response: INTERNAL_PREREQUISITES_NOT_MET if any of dwc:decimalLatitude or dwc:decimalLongitude or dwc:countryCode are bdqval:Empty; AMENDED dwc:decimalLatitude and dwc:decimalLongitude if the coordinates were transposed or one or more of the signs of the coordinates were reversed to align the location with dwc:countryCode according to the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if any of dwc:decimalLatitude or dwc:decimalLongitude or dwc:countryCode are bdqval:Empty; AMENDED dwc:decimalLatitude and dwc:decimalLongitude if the coordinates were transposed or one or more of the signs of the coordinates were reversed to align the location with dwc:countryCode according to the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]}

Default value for bdqval:sourceAuthority:"10m-admin-1 boundaries UNION with Exclusive Economic Zones"
type: Argument
has argument value: 10m-admin-1 boundaries UNION with Exclusive Economic Zones
has parameter: sourceAuthority

AMENDMENT_MINDEPTHMAXDEPTH_FROM_VERBATIM
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: If dwc:verbatimDepth has a single value rather than a range, the minimum and maximum values should be amended with the same value. When transforming units, the transformation should be reversible, not adjusting the number of significant digits or adjusting the rounding. For example, transform fathoms to meters by multiplying by 1.8288 and retaining added significant digits (verbatim depth of 10 fathoms to minimum and maximum depths in meters of 18.288). Implementations should be capable of interpreting verbatim data in at least meters, fathoms, and feet, in the form of either a single value or a range. The units must be specified in the verbatim data to be interpretable.
has data quality dimension: Completeness
description: Proposes amendments of the values of dwc:minimumDepthInMeters and dwc:maximumDepthInMeters if they can be interpreted from dwc:verbatimDepth.
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/55
preferred label: Amendment dwc:minimumDepthInMeters dwc:maximumDepthInMeters from dwc:verbatimDepth for SingleRecord

Information Element Consulted dwc:verbatimDepth
type: Consulted
composed of: verbatimDepth

AmendmentMethod: AMENDMENT_MINDEPTHMAXDEPTH_FROM_VERBATIM with Specification Specification for: AMENDMENT_MINDEPTHMAXDEPTH_FROM_VERBATIM
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1121
note: TG2 Amendment SPACE CODED Test Completeness CORE

Specification for: AMENDMENT_MINDEPTHMAXDEPTH_FROM_VERBATIM
type: Specification
example: dwc:minimumDepthInMeters="", dwc:maximumDepthInMeters="", dwc:verbatimDepth="10 feet": Response.status=FILLED_IN, Response.result=dwc:minimumDepthInMeters="3.048", dwc:maximumDepthInMeters="3.048", Response.comment="dwc:verbatimDepth contains interpretable values"
example: dwc:minimumDepthInMeters="", dwc:maximumDepthInMeters="", dwc:verbatimDepth="x": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:verbatimDepth does not contain an interpretable value"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters or dwc:maximumDepthInMeters are bdqval:NotEmpty or dwc:verbatimDepth is bdqval:Empty; FILLED_IN the value of dwc:minimumDepthInMeters and dwc:maximumDepthInMeters if they can be unambiguously interpreted from dwc:verbatimDepth; otherwise NOT_AMENDED.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters or dwc:maximumDepthInMeters are bdqval:NotEmpty or dwc:verbatimDepth is bdqval:Empty; FILLED_IN the value of dwc:minimumDepthInMeters and dwc:maximumDepthInMeters if they can be unambiguously interpreted from dwc:verbatimDepth; otherwise NOT_AMENDED.

VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT
type: Validation
has resource type: SingleRecord
note: The geographic determination service is expected to return a list of names of first-level administrative divisions for geometries that the geographic point falls on or within, including a 3 km buffer around the administrative geometry. A match on any of those names should constitute a consistency, and dwc:countryCode should not be needed to make this determination, that is, this Test does not attempt to disambiguate potential duplicate first-level administrative division names. The level of buffering may be related to the scale of the underlying GIS layer being used. At a global scale, typical map scales used for borders and coastal areas are either 1:3M or 1:1M (Dooley 2005, Chapter 4). Horizontal accuracy at those scales is around 1.5-2.5km and 0.5-0.85 km respectively (Chapman & Wieczorek 2020).
has data quality dimension: Consistency
description: Do the geographic coordinates fall on or within the boundary from the bdqval:sourceAuthority for the given dwc:stateProvince or within the distance given by bdqval:spatialBufferInMeters outside that boundary?
has criterion: Consistent
issued: 2025-03-07
references: doc-gg7h-s853
references: Contents
references: geocoding-reverse
references: 12 introducing natural earth data naturaleart.pdf
references: 10m-admin-1-states-provinces
references: v5.1.2
references: https://www.arcgis.com/home/item.html
references: www.geonames.org
history note: https://github.com/tdwg/bdq/issues/56
preferred label: Validation Coordinates dwc:stateProvince Consistent for SingleRecord

Information Element ActedUpon dwc:stateProvince, dwc:decimalLatitude, dwc:decimalLongitude
type: ActedUpon
composed of: stateProvince
composed of: decimalLatitude
composed of: decimalLongitude

https://www.arcgis.com/home/item.html
type: BibliographicResource
bibliographic citation: ESRI (2020) World Administrative Divisions. https://www.arcgis.com/home/item.html?id=f0ceb8af000a4ffbae75d742538c548b

www.geonames.org
type: BibliographicResource
bibliographic citation: ProgrammableWeb (2006) GeoNames API. https://www.geonames.org/

ValidationMethod: VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT with Specification for: VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1378
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency CORE
history note: Source: ALA

Specification for: VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT
type: Specification
example: dwc:stateProvince="Tasmania", dwc:decimalLatitude="-42.85", dwc:decimalLongitude="146.75": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="Input fields contain interpretable values"
example: dwc:stateProvince="Córdoba", dwc:decimalLatitude="-41.0525925872862", dwc:decimalLongitude="-71.5310546742521": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="Input fields contain interpretable values but coordinates don't match dwc:stateProvince with buffer"
has authorities defaults: bdqval:sourceAuthority default = "10m-admin-1 boundaries" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/]},bdqval:spatialBufferInMeters default = "3000"
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the values of dwc:decimalLatitude or dwc:decimalLongitude are bdqval:Empty or invalid, or dwc:stateProvince is bdqval:Empty or not found in the bdqval:sourceAuthority; COMPLIANT if the geographic coordinates fall on or within the boundary in the bdqval:sourceAuthority for the given dwc:stateProvince (after coordinate reference system transformations, if any, have been accounted for), or within the distance given by bdqval:spatialBufferInMeters outside that boundary; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the values of dwc:decimalLatitude or dwc:decimalLongitude are bdqval:Empty or invalid, or dwc:stateProvince is bdqval:Empty or not found in the bdqval:sourceAuthority; COMPLIANT if the geographic coordinates fall on or within the boundary in the bdqval:sourceAuthority for the given dwc:stateProvince (after coordinate reference system transformations, if any, have been accounted for), or within the distance given by bdqval:spatialBufferInMeters outside that boundary; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "10m-admin-1 boundaries" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/]},bdqval:spatialBufferInMeters default = "3000"

Default value for bdqval:sourceAuthority:"10m-admin-1 boundaries"
type: Argument
has argument value: 10m-admin-1 boundaries
has parameter: sourceAuthority

Default value for bdqval:spatialBufferInMeters:"3000"
type: Argument
has argument value: 3000
has parameter: spatialBufferInMeters

AMENDMENT_SCIENTIFICNAMEID_FROM_TAXON
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: Return a result with no value and a Result.status of NOT_AMENDED with a Response.comment of ambiguous if the information provided does not resolve to a unique result (e.g. if homonyms exist and there is insufficient information in the provided data, for example using the lowest ranking taxa in conjunction with dwc:dwc:scientificNameAuthorship, to resolve them). When referencing a GBIF taxon by GBIF's identifier for that taxon, use the the pseudo-namespace "gbif:" and the form "gbif:{integer}" as the value for dwc:scientificNameID.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:scientificNameID if it can be unambiguously resolved from bdqval:sourceAuthority using the available taxon terms.
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/57
preferred label: Amendment dwc:scientificNameID from dwc:Taxon for SingleRecord

Information Element ActedUpon dwc:scientificNameID
type: ActedUpon
composed of: scientificNameID

urn:…
type: Consulted
composed of: taxonID
composed of: acceptedNameUsageID
composed of: originalNameUsageID
composed of: taxonConceptID
composed of: scientificName
composed of: higherClassification
composed of: kingdom
composed of: phylum
composed of: class
composed of: order
composed of: superfamily
composed of: family
composed of: subfamily
composed of: tribe
composed of: subtribe
composed of: genus
composed of: genericName
composed of: subgenus
composed of: specificEpithet
composed of: infraspecificEpithet
composed of: cultivarEpithet
composed of: vernacularName
composed of: scientificNameAuthorship
composed of: taxonRank
label: Information Element Consulted dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID, dwc:scientificName, dwc:higherClassification, dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus, dwc:genericName, dwc:subgenus, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:cultivarEpithet, dwc:vernacularName, dwc:scientificNameAuthorship, dwc:taxonRank

AmendmentMethod: AMENDMENT_SCIENTIFICNAMEID_FROM_TAXON with Specification Specification for: AMENDMENT_SCIENTIFICNAMEID_FROM_TAXON
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025), Arctos, MCZbase, Symbiota
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L393
note: TG2 Amendment NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: FP-Akka

Specification for: AMENDMENT_SCIENTIFICNAMEID_FROM_TAXON
type: Specification
example: dwc:taxonID="", dwc:scientificNameID="", dwc:acceptedNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="Chicoreus palmarosae (Lamarck, 1822)", dwc:higherClassification="", dwc:kingdom="Animalia", dwc:phylum="Mollusca", dwc:class="Gastropoda", dwc:order="", dwc:family="Muricidae", dwc:subfamily="", dwc:genus="Chicoreus", dwc:genericName="Chicoreus", dwc:subgenus="", dwc:infragenericEpithet="", dwc:specificEpithet="palmarosae", dwc:infraspecificEpithet="", dwc:cultivarEpithet="", dwc:vernacularName="", dwc:scientificNameAuthorship="(Lamarck, 1822)", dwc:taxonRank="", bdqval:sourceAuthority=”marinespecies.org”: Response.status=FILLED_IN, Response.result=dwc:scientificNameID="urn:lsid:marinespecies.org:taxname:208134", Response.comment="dwc:scientificName matched to unique taxon record in WoRMS, exact match on name and authorship. Resolvable at https://marinespecies.org/aphia.php?p=taxdetails&id=208134"
example: dwc:scientificNameID="", dwc:taxonID="", dwc:acceptedNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="Graphis", dwc:higherClassification="", dwc:kingdom="", dwc:phylum="", dwc:class="", dwc:order="", dwc:family="", dwc:subfamily="", dwc:genus="", dwc:genericName="", dwc:subgenus="", dwc:infragenericEpithet="", dwc:specificEpithet="", dwc:infraspecificEpithet="", dwc:cultivarEpithet="", dwc:vernacularName="", dwc:scientificNameAuthorship="", dwc:taxonRank="": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:scientificName="Graphis" is ambiguous as could be either a lichen or a gastropod."
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:NotEmpty, or if all of dwc:scientificName, dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship, and dwc:cultivarEpithet are bdqval:Empty, FILLED_IN the value of dwc:scientificNameID for an unambiguously resolved single taxon record in the bdqval:sourceAuthority through (1) the value of dwc:scientificName or (2) if dwc:scientificName is bdqval:Empty through values of the terms dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship and dwc:cultivarEpithet, or (3) if ambiguity produced by multiple matches in (1) or (2) can be disambiguated to a single Taxon using the values of dwc:subtribe, dwc:tribe, dwc:subgenus, dwc:genus, dwc:subfamily, dwc:family, dwc:superfamily, dwc:order, dwc:class, dwc:phylum, dwc:kingdom, dwc:higherClassification, dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID, dwc:taxonomicRank, and dwc:vernacularName; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:NotEmpty, or if all of dwc:scientificName, dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship, and dwc:cultivarEpithet are bdqval:Empty, FILLED_IN the value of dwc:scientificNameID for an unambiguously resolved single taxon record in the bdqval:sourceAuthority through (1) the value of dwc:scientificName or (2) if dwc:scientificName is bdqval:Empty through values of the terms dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship and dwc:cultivarEpithet, or (3) if ambiguity produced by multiple matches in (1) or (2) can be disambiguated to a single Taxon using the values of dwc:subtribe, dwc:tribe, dwc:subgenus, dwc:genus, dwc:subfamily, dwc:family, dwc:superfamily, dwc:order, dwc:class, dwc:phylum, dwc:kingdom, dwc:higherClassification, dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID, dwc:taxonomicRank, and dwc:vernacularName; otherwise NOT_AMENDED bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_BASISOFRECORD_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:basisOfRecord?
has criterion: NotEmpty
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/58
preferred label: Validation dwc:basisOfRecord Not Empty for SingleRecord

Information Element ActedUpon dwc:basisOfRecord
type: ActedUpon
composed of: basisOfRecord

ValidationMethod: VALIDATION_BASISOFRECORD_NOTEMPTY with Specification for: VALIDATION_BASISOFRECORD_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L207
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: VALIDATION_BASISOFRECORD_NOTEMPTY
type: Specification
example: dwc:basisOfRecord="PreservedSpecimen": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:basisOfRecord is bdqval:NotEmpty"
example: dwc:basisOfRecord="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:basisOfRecord is bdqval:Empty"
has expected response: COMPLIANT if dwc:basisOfRecord is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:basisOfRecord is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_GEODETICDATUM_STANDARD
type: Validation
has resource type: SingleRecord
note: Darwin Core recommends best practice is to use a controlled vocabulary. This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters. Chapman and Wieczorek (2020) recommend best practice is to use EPSG geographic CRS or Datum codes (https://epsg.io/) as a controlled vocabulary. Ideally, amend to the EPSG code for the geographic coordinate reference system (CRS), if known. Otherwise use the EPSG code for the geodetic datum, if known. Otherwise use the EPSG code of the ellipsoid, if known. If none of these is known, use the explicit value "not recorded". While "not recorded" is not a valid EPSG code, it is a valid value according to Darwin Core. The reference vocabularies of values for geodetic datums and ellipsoids needs to be made available and should map alternative representations of dwc:geodeticDatum strings to EPSG codes, such as "WGS84", "WGS_84", "WGS:84", "WGS 84" all with standard value "EPSG:4326".
has data quality dimension: Conformance
description: Does the value of dwc:geodeticDatum occur as a valid geographic CRS, geodetic Datum or ellipsoid in bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: epsg.io
references: epsg.org
references: spatialreference.org
references: about.html
references: doc-gg7h-s853
references: calculator
history note: https://github.com/tdwg/bdq/issues/59
preferred label: Validation dwc:geodeticDatum Standard for SingleRecord

Information Element ActedUpon dwc:geodeticDatum
type: ActedUpon
composed of: geodeticDatum

epsg.io
type: BibliographicResource
bibliographic citation: Maptiler (2019) EPSG.io. https://epsg.io/

epsg.org
type: BibliographicResource
bibliographic citation: EPSG (2024) About the EPSG Dataset. https://epsg.org/

spatialreference.org
type: BibliographicResource
bibliographic citation: Spatial Reference (2024) What is SpatialReference.org. https://spatialreference.org/

about.html
type: BibliographicResource
bibliographic citation: Geomatic Solutions (2026) GeoRepository. https://epsg.org/about.html

calculator
type: BibliographicResource
bibliographic citation: Wieczorek C and Wieczorek J (2021) Georeferencing Calculator. https://georeferencing.org/calculator/

ValidationMethod: VALIDATION_GEODETICDATUM_STANDARD with Specification for: VALIDATION_GEODETICDATUM_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1500
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_GEODETICDATUM_STANDARD
type: Specification
example: dwc:geodeticDatum="EPSG:4326": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:geodeticDatum matches an unambiguous alphanumeric CRS or datum code value in the bdqval:sourceAuthority"
example: dwc:geodeticDatum="7030": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:geodeticDatum doesn't match values in the bdqval:sourceAuthority, 7030 is a bare number without an authority.
has authorities defaults: bdqval:sourceAuthority = "EPSG" {[https://epsg.org]} {API for EPSG codes [https://apps.epsg.org/api/swagger/ui/index]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available, INTERNAL_PREREQUISITES_NOT_MET if dwc:geodeticDatum is bdqval:Empty; COMPLIANT if the value of dwc:geodeticDatum is a valid code from the bdqval:sourceAuthority (in the form Authority:Number) for a Datum, or ellipsoid, or for a CRS appropriate for a 2D geographic coordinate in degrees, or is the value "not recorded"; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available, INTERNAL_PREREQUISITES_NOT_MET if dwc:geodeticDatum is bdqval:Empty; COMPLIANT if the value of dwc:geodeticDatum is a valid code from the bdqval:sourceAuthority (in the form Authority:Number) for a Datum, or ellipsoid, or for a CRS appropriate for a 2D geographic coordinate in degrees, or is the value "not recorded"; otherwise NOT_COMPLIANT bdqval:sourceAuthority = "EPSG" {[https://epsg.org]} {API for EPSG codes [https://apps.epsg.org/api/swagger/ui/index]}

AMENDMENT_GEODETICDATUM_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: Chapman and Wieczorek (2020) recommend best practice is to use EPSG codes (https://epsg.io/) as a controlled vocabulary. Ideally, amend to the EPSG code for the geographic coordinate reference system (CRS), if known. Otherwise use the EPSG code for the geodetic datum, if known. Otherwise use the EPSG code of the ellipsoid, if known. If none of these is known, use the explicit value "not recorded". The reference vocabularies of values for geodetic datums and ellipsoids needs to be made available and should map alternative representations of dwc:geodeticDatum strings to EPSG codes, such as "WGS84", "WGS_84", "WGS:84", "WGS 84", all with standard value "EPSG:4326". NB. Do NOT change one datum to any other datum no matter how close they are or may appear to be. The same treatment should be given to all datums, which is to use their transformation algorithms to get the equivalent in EPSG:4326. For reference, a vocabulary of synonyms for EPSG codes for values of dwc:geodeticDatum can be found at https://registry.gbif.org/vocabulary/GeodeticDatum/concepts and and for more information on obtaining the EPSG dataset, see https://docs.geotools.org/latest/userguide/library/referencing/epsg.html. For the purposes of this Test "not recorded" is not a value in the bdqval:sourceAuthority and should result in NOT_AMENDED.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:geodeticDatum using the bdqval:sourceAuthority.
issued: 2025-03-07
references: epsg.io
references: epsg.org
references: spatialreference.org
references: about.html
references: doc-gg7h-s853
references: calculator
history note: https://github.com/tdwg/bdq/issues/60
preferred label: Amendment dwc:geodeticDatum Standardized for SingleRecord

AmendmentMethod: AMENDMENT_GEODETICDATUM_STANDARDIZED with Specification Specification for: AMENDMENT_GEODETICDATUM_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1568
note: TG2 Amendment SPACE CODED Test VOCABULARY Conformance CORE
history note: Source: Paul Morris

Specification for: AMENDMENT_GEODETICDATUM_STANDARDIZED
type: Specification
example: dwc:geodeticDatum="WGS84": Response.status=AMENDED, Response.result=dwc:geodeticDatum="EPSG:4326", Response.comment="dwc:geodeticDatum contains a valid code in the bdqval:sourceAuthority"
example: dwc:geodeticDatum="WGS8": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:geodeticDatum contains an ambiguous value"
has authorities defaults: bdqval:sourceAuthority = "EPSG" {[https://epsg.org]} {API for EPSG codes [https://apps.epsg.org/api/swagger/ui/index#/Datum]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:geodeticDatum is bdqval:Empty; AMENDED the value of dwc:geodeticDatum if it could be unambiguously interpreted as a valid code from the bdqval:sourceAuthority (in the form Authority:Number) for a Datum, Ellipsoid or a CRS appropriate for a 2D geographic coordinate in degrees, or as the value "not recorded"; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:geodeticDatum is bdqval:Empty; AMENDED the value of dwc:geodeticDatum if it could be unambiguously interpreted as a valid code from the bdqval:sourceAuthority (in the form Authority:Number) for a Datum, Ellipsoid or a CRS appropriate for a 2D geographic coordinate in degrees, or as the value "not recorded"; otherwise NOT_AMENDED bdqval:sourceAuthority = "EPSG" {[https://epsg.org]} {API for EPSG codes [https://apps.epsg.org/api/swagger/ui/index#/Datum]}

AMENDMENT_EVENTDATE_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: The intent of the amended range is to capture the original uncertainty where possible. As in the example, we amend "1999-11" instead of "1999-11-01/1999-11-31". An AMBIGUOUS response is possible.
has data quality dimension: Conformance
description: Proposes an amendment of the value of dwc:eventDate to a valid ISO date.
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/61
preferred label: Amendment dwc:eventDate Standardized for SingleRecord

AmendmentMethod: AMENDMENT_EVENTDATE_STANDARDIZED with Specification Specification for: AMENDMENT_EVENTDATE_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L559 A minimal set of unit tests is in [DwCEventDQTestDefinitions](https://github.com/FilteredPush/event_date_qc/blob/v3.0.0/src/test/java/org/filteredpush/qc/date/DwCEventDQTestDefinitions.java#L338) unit tests for the underlying verbatim date extraction code are in [DateUtilsTest](https://github.com/FilteredPush/event_date_qc/blob/v3.0.0/src/test/java/org/filteredpush/qc/date/DateUtilsTest.java#L632) and [DateUtilsTest](https://github.com/FilteredPush/event_date_qc/blob/v3.0.0/src/test/java/org/filteredpush/qc/date/DateUtilsTest.java#L788)
note: TG2 Amendment TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: Paul Morris, Lee Belbin

Specification for: AMENDMENT_EVENTDATE_STANDARDIZED
type: Specification
example: dwc:eventDate="2021-28-10": Response.status=AMENDED, Response.result=dwc:eventDate="2021-10-28", Response.comment="dwc:eventDate contains an interpretable value. Assuming year-day-month input format"
example: dwc:eventDate="10-28": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:eventDate contains an ambiguous value"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty; AMENDED if the value of dwc:eventDate is not a properly formatted ISO 8601 date but is unambiguous, and altered to be a valid ISO 8601 date; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty; AMENDED if the value of dwc:eventDate is not a properly formatted ISO 8601 date but is unambiguous, and altered to be a valid ISO 8601 date; otherwise NOT_AMENDED

VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT
type: Validation
has resource type: SingleRecord
note: The country code determination service should be able to match the name of a country in the original or any language in the source authority. When dwc:countryCode="XZ" to designate "high seas", dwc:country should be empty. This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Consistency
description: Does the ISO country code, determined from the value of dwc:country, equal the value of dwc:countryCode?
has criterion: Consistent
issued: 2025-03-07
references: iso-3166-country-codes.html
references: country-list
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/62
preferred label: Validation dwc:country dwc:countryCode Consistent for SingleRecord

Information Element ActedUpon dwc:country, dwc:countryCode
type: ActedUpon
composed of: country
composed of: countryCode

ValidationMethod: VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT with Specification for: VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1675
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD CORE
history note: Source: GBIF

Specification for: VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT
type: Specification
example: dwc:country="Australia", dwc:countryCode="AU": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:country matches dwc:countryCode"
example: dwc:country="United States Minor Outlying Islands", dwc:countryCode="US": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:country does not match dwc:countryCode"
has authorities defaults: bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if either of the terms dwc:country or dwc:countryCode are bdqval:Empty; COMPLIANT if the values of dwc:country and dwc:countryCode match national-level country name and matching country code respectively in the bdqval:sourceAuthority
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if either of the terms dwc:country or dwc:countryCode are bdqval:Empty; COMPLIANT if the values of dwc:country and dwc:countryCode match national-level country name and matching country code respectively in the bdqval:sourceAuthority bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}

AMENDMENT_BASISOFRECORD_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: 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 example, the term http://rs.tdwg.org/dwc/terms/PreservedSpecimen has a local name PreservedSpecimen. 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, which contains the local name for the identifier, as well as preferred and alternate labels from which to standardize values.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:basisOfRecord using the bdqval:sourceAuthority.
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/63
preferred label: Amendment dwc:basisOfRecord Standardized for SingleRecord

AmendmentMethod: AMENDMENT_BASISOFRECORD_STANDARDIZED with Specification Specification for: AMENDMENT_BASISOFRECORD_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L834
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: VertNet

Specification for: AMENDMENT_BASISOFRECORD_STANDARDIZED
type: Specification
example: dwc:basisOfRecord="Human obs": Response.status=AMENDED, Response.result=dwc:basisOfRecord="HumanObservation", Response.comment="dwc:basisOfRecord contains interpretable value"
example: dwc:basisOfRecord="FossilSpecimen": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:basisOfRecord contains match in the bdqval:sourceAuthority so NOT_AMENDED"
has authorities defaults: bdqval: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]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:basisOfRecord is bdqval:Empty; AMENDED the value of dwc:basisOfRecord if it could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:basisOfRecord is bdqval:Empty; AMENDED the value of dwc:basisOfRecord if it could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval: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]}

Default value for bdqval:sourceAuthority:"Darwin Core basisOfRecord"
type: Argument
has argument value: Darwin Core basisOfRecord
has parameter: sourceAuthority

VALIDATION_EVENTDATE_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test should also pick up issues such as 29 Feb in a non-leap year.
has data quality dimension: Conformance
description: Is the value of dwc:eventDate a valid ISO date?
has criterion: Standard
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/66
preferred label: Validation dwc:eventDate Standard for SingleRecord

ValidationMethod: VALIDATION_EVENTDATE_STANDARD with Specification for: VALIDATION_EVENTDATE_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L507
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: Paul Morris

Specification for: VALIDATION_EVENTDATE_STANDARD
type: Specification
example: dwc:eventDate="1963-03-08T14": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:eventDate contains a valid ISO 8601-1:2019 date"
example: dwc:eventDate="1963-03-08T14:67-0600": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:eventDate does not contain a valid ISO 8601-1:2019 date"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty; COMPLIANT if the value of dwc:eventDate is a valid ISO 8601 date; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty; COMPLIANT if the value of dwc:eventDate is a valid ISO 8601 date; otherwise NOT_COMPLIANT

VALIDATION_EVENT_CONSISTENT
type: Validation
has resource type: SingleRecord
note: This Test does not take a position on whether the value in dwc:eventDate, or the values in the atomic terms are correct, it simply points out the presence of inconsistencies. For this Test, dwc:eventTime is explicitly ignored. It may be useful to consider an additional Test that does evaluate dwc:eventTime and dwc:eventDate. In that case, but not in this Test, if the time is present in both dwc:eventDate and dwc:eventTime, and it is inconsistent, it may indicate an error in the dwc:eventDate, thus making it a problem that someone needs to evaluate. This Test will only assert consistency if the data are both internally consistent and are compliant with the term definitions, for example dwc:day, by its definition, can only be the day of an dwc:eventDate that has a precision of a day or better and is not a range that spans more than a single day. A dwc:day that was internally consistent with the first day of the year (that is, 1) of an dwc:eventDate that only had precision to a year would be consistent internally, but not consistent with the Darwin Core term definitions, and would not return COMPLIANT from this Test.
has data quality dimension: Consistency
description: Are the values in dwc:eventDate consistent with the values in dwc:year, dwc:month, dwc:day, dwc:startDayOfYear and dwc:endDayOfYear?
has criterion: Consistent
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/67
preferred label: Validation dwc:Event Consistent for SingleRecord

Information Element ActedUpon dwc:eventDate, dwc:day, dwc:month, dwc:year, dwc:startDayOfYear, dwc:endDayOfYear
type: ActedUpon
composed of: eventDate
composed of: day
composed of: month
composed of: year
composed of: startDayOfYear
composed of: endDayOfYear

ValidationMethod: VALIDATION_EVENT_CONSISTENT with Specification for: VALIDATION_EVENT_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1754
note: TG2 Validation TIME CODED Test Consistency CORE
history note: Source: GBIF

Specification for: VALIDATION_EVENT_CONSISTENT
type: Specification
example: dwc:day="15", dwc:month="9", dwc:year="1949", dwc:eventDate="1949-09-15T12:34", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:day, dwc:month and dwc:year match dwc:eventDate"
example: dwc:day="15", dwc:month="9", dwc:year="1949", dwc:eventDate="1949-09-16T12:34", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:day does not match dwc:eventDate"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty, or all of dwc:year, dwc:month, dwc:day, dwc:startDayOfYear and dwc:endDayOfYear are bdqval:Empty; COMPLIANT if all of the following conditions are met (1) dwc:year is bdqval:Empty or dwc:eventDate has a precision of one year or finer and and is within a single year and the provided value of dwc:year matches the year expressed in dwc:eventDate, and (2) dwc:month is bdqval:Empty or dwc:eventDate has a precision of one month or finer and is within a single month and the provided value in dwc:month matches the month represented by dwc:eventDate, and (3) dwc:day is bdqval:Empty or dwc:eventDate has a precision of a day or less and is within a single day and the provided value in dwc:day matches the day represented by dwc:eventDate, and (4) dwc:startDayOfYear is empty or dwc:eventDate has a precision of one day or finer and the provided value in dwc:startDayOfYear matches the start day of the year of the range represented by dwc:eventDate, and (5) dwc:endDayOfYear is empty or dwc:eventDate has a precision of one day or finer and the provided value in dwc:endDayOfYear matches the end day of the year of the range represented by dwc:eventDate; otherwise NOT_COMPLIANT.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty, or all of dwc:year, dwc:month, dwc:day, dwc:startDayOfYear and dwc:endDayOfYear are bdqval:Empty; COMPLIANT if all of the following conditions are met (1) dwc:year is bdqval:Empty or dwc:eventDate has a precision of one year or finer and and is within a single year and the provided value of dwc:year matches the year expressed in dwc:eventDate, and (2) dwc:month is bdqval:Empty or dwc:eventDate has a precision of one month or finer and is within a single month and the provided value in dwc:month matches the month represented by dwc:eventDate, and (3) dwc:day is bdqval:Empty or dwc:eventDate has a precision of a day or less and is within a single day and the provided value in dwc:day matches the day represented by dwc:eventDate, and (4) dwc:startDayOfYear is empty or dwc:eventDate has a precision of one day or finer and the provided value in dwc:startDayOfYear matches the start day of the year of the range represented by dwc:eventDate, and (5) dwc:endDayOfYear is empty or dwc:eventDate has a precision of one day or finer and the provided value in dwc:endDayOfYear matches the end day of the year of the range represented by dwc:eventDate; otherwise NOT_COMPLIANT.

AMENDMENT_MINELEVATIONMAXELEVATION_FROM_VERBATIM
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: If the dwc:verbatimElevation as a single value rather than a range, the minimum and maximum values should be amended with the same value. When transforming units, the transformation should be reversible, not adjusting the number of significant digits or adjusting the rounding. For example, transform yards to meters by multiplying by 0.9144 and retaining added significant digits (verbatim elevation of 10 yards to minimum and maximum depths in meters of 9.144). Implementations should be capable of interpreting verbatim data in at least meters,yards, feet, and kilometers in the form of either a single value or a range. The units must be specified in the verbatim data to be interpretable.
has data quality dimension: Completeness
description: Proposes an amendment or amendments to the values of dwc:minimumElevationInMeters and dwc:maximumElevationInMeters if they can be interpreted from dwc:verbatimElevation.
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/68
preferred label: Amendment dwc:minimumElevationInMeters dwc:maximumElevationInMeters from dwc:verbatimElevation for SingleRecord

Information Element ActedUpon dwc:minimumElevationInMeters, dwc:maximumElevationInMeters
type: ActedUpon
composed of: minimumElevationInMeters
composed of: maximumElevationInMeters

Information Element Consulted dwc:verbatimElevation
type: Consulted
composed of: verbatimElevation

AmendmentMethod: AMENDMENT_MINELEVATIONMAXELEVATION_FROM_VERBATIM with Specification Specification for: AMENDMENT_MINELEVATIONMAXELEVATION_FROM_VERBATIM
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L1775
note: TG2 Amendment SPACE CODED Test Completeness CORE

Specification for: AMENDMENT_MINELEVATIONMAXELEVATION_FROM_VERBATIM
type: Specification
example: dwc:verbatimElevation="100 feet", dwc:minimumElevationInMeters="", dwc:maximumElevationInMeters="": Response.status=FILLED_IN, Response.result=dwc:minimumElevationInMeters="30.48", dwc:maximumElevationInMeters="30.48", Response.comment="dwc:verbatimElevation contains an interpretable value"
example: dwc:verbatimElevation="x", dwc:minimumElevationInMeters="", dwc:maximumElevationInMeters="": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:verbatimElevation contains an uninterpretable value"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumElevationInMeters or dwc:maximumElevationInMeters are bdqval:NotEmpty or dwc:verbatimElevation is bdqval:Empty; FILLED_IN the values of dwc:minimumElevationInMeters and dwc:maximumElevationInMeters if they can be unambiguously interpreted from dwc:verbatimElevation; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumElevationInMeters or dwc:maximumElevationInMeters are bdqval:NotEmpty or dwc:verbatimElevation is bdqval:Empty; FILLED_IN the values of dwc:minimumElevationInMeters and dwc:maximumElevationInMeters if they can be unambiguously interpreted from dwc:verbatimElevation; otherwise NOT_AMENDED

VALIDATION_DATEIDENTIFIED_STANDARD
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:dateIdentified a valid ISO date?
has criterion: Standard
issued: 2025-03-07
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/69
preferred label: Validation dwc:dateIdentified Standard for SingleRecord

ValidationMethod: VALIDATION_DATEIDENTIFIED_STANDARD with Specification for: VALIDATION_DATEIDENTIFIED_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCOtherDateDQ.java#L61
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE

Specification for: VALIDATION_DATEIDENTIFIED_STANDARD
type: Specification
example: dwc:dateIdentified="1963-03-08T14:07": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:dateIdentified is a valid ISO 8601-1:2019 date"
example: dwc:dateIdentified="1963-03-08X14:07-0600": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:dateIdentified is not a valid ISO 8601-1:2019 date"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:dateIdentified is bdqval:Empty; COMPLIANT if the value of dwc:dateIdentified contains a valid ISO 8601 date; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:dateIdentified is bdqval:Empty; COMPLIANT if the value of dwc:dateIdentified contains a valid ISO 8601 date; otherwise NOT_COMPLIANT

VALIDATION_TAXON_UNAMBIGUOUS
type: Validation
has resource type: SingleRecord
note: There are any number of potential controlled vocabularies that might be used for this Test, including local vocabularies and taxon specific vocabularies. If dwc:scientificNameID is bdqval:Empty, use dwc:scientificName and dwc:CultivarEpithet to search for a unique taxon. If dwc:scientificName is bdqval:Empty, check with the terms that form atomic parts of it (dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:taxonRank, dwc:scientificNameAuthorship), and if more than one match is found, use the remaining terms to try to disambiguate to a single Taxon record. The terms dwc:subgenus, dwc:genus, dwc:family, dwc:order, dwc:class, dwc:phylum, dwc:kingdom, dwc:higherClassification, dwc:scientificNameID,, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID should not be used to make a match if dwc:scientificNameID and dwc:scientificName or dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:taxonRank, dwc:scientificNameAuthorship are bdqval:Empty. Note that Test VALIDATION_SCIENTIFICNAME_FOUND (4c09f127-737b-4686-82a0-7c8e30841590) is a more specific Test for a subset of Information Elements from this Test.
has data quality dimension: Conformance
description: Can the taxon be unambiguously resolved from bdqval:sourceAuthority using the available taxon terms?
has criterion: Unambiguous
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/70
preferred label: Validation dwc:Taxon Unambiguous for SingleRecord

Unambiguous
type: Criterion

Information Element ActedUpon dwc:scientificName, dwc:scientificNameID
type: ActedUpon
composed of: scientificName
composed of: scientificNameID

urn:…
type: Consulted
composed of: taxonID
composed of: acceptedNameUsageID
composed of: originalNameUsageID
composed of: taxonConceptID
composed of: higherClassification
composed of: kingdom
composed of: phylum
composed of: class
composed of: order
composed of: superfamily
composed of: family
composed of: subfamily
composed of: tribe
composed of: subtribe
composed of: genus
composed of: genericName
composed of: subgenus
composed of: infragenericEpithet
composed of: specificEpithet
composed of: infraspecificEpithet
composed of: cultivarEpithet
composed of: vernacularName
composed of: scientificNameAuthorship
composed of: taxonRank
label: Information Element Consulted dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID, dwc:higherClassification, dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus, dwc:genericName, dwc:subgenus, dwc:infragenericEpithet, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:cultivarEpithet, dwc:vernacularName, dwc:scientificNameAuthorship, dwc:taxonRank

ValidationMethod: VALIDATION_TAXON_UNAMBIGUOUS with Specification for: VALIDATION_TAXON_UNAMBIGUOUS
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L792
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA, GBIF, CRIA

Specification for: VALIDATION_TAXON_UNAMBIGUOUS
type: Specification
example: dwc:taxonID="", dwc:scientificNameID="", dwc:acceptedNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="Triplex rosaria Perry, 1811", dwc:higherClassification="", dwc:kingdom="Animalia", dwc:phylum="mollusca", dwc:class="Gastropoda", dwc:order="", dwc:family="Muricidae", dwc:subfamily="", dwc:genus="Chicoreus", dwc:genericName="Triplex", dwc:subgenus="", dwc:infragenericEpithet="", dwc:specificEpithet="rosarium", dwc:infraspecificEpithet="", dwc:cultivarEpithet="", dwc:vernacularName="", dwc:scientificNameAuthorship="Perry, 1811", dwc:taxonRank="",bdqval:sourceAuthority=”marinespecies.org”: Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificName matched to unique taxon record in WoRMS, unique fuzzy match on name and exact match on authorship. "
example: dwc:taxonID="", dwc:scientificNameID="", dwc:acceptedNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="Graphis", dwc:higherClassification="", dwc:kingdom="", dwc:phylum="", dwc:class="", dwc:order="", dwc:family="", dwc:subfamily="", dwc:genus="", dwc:genericName="", dwc:subgenus="", dwc:infragenericEpithet="", dwc:specificEpithet="", dwc:infraspecificEpithet="", dwc:cultivarEpithet="", dwc:vernacularName="", dwc:scientificNameAuthorship="", dwc:taxonRank="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificName="Graphis" is ambiguous as could be either a lichen or a gastropod."
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if all of dwc:scientificNameID, dwc:scientificName, dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship, dwc:cultivarEpithet are bdqval:Empty; COMPLIANT if (1) dwc:scientificNameID references a single taxon record in the bdqval:sourceAuthority, or (2) dwc:scientificNameID is bdqval:Empty and dwc:scientificName references a single taxon record in the bdqval:sourceAuthority, or (3) if dwc:scientificName and dwc:scientificNameID are bdqval:Empty and if a combination of the values of the terms dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:cultivarEpithet, dwc:taxonRank, and dwc:scientificNameAuthorship can be unambiguously resolved to a unique taxon in the bdqval:sourceAuthority, or (4) if ambiguity produced by multiple matches in (2) or (3) can be disambiguated to a unique Taxon using the values of dwc:tribe, dwc:subtribe, dwc:subgenus, dwc:genus, dwc:subfamily, dwc:family, dwc:superfamily, dwc:order, dwc:class, dwc:phylum, dwc:kingdom, dwc:higherClassification, dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID and dwc:vernacularName; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if all of dwc:scientificNameID, dwc:scientificName, dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:scientificNameAuthorship, dwc:cultivarEpithet are bdqval:Empty; COMPLIANT if (1) dwc:scientificNameID references a single taxon record in the bdqval:sourceAuthority, or (2) dwc:scientificNameID is bdqval:Empty and dwc:scientificName references a single taxon record in the bdqval:sourceAuthority, or (3) if dwc:scientificName and dwc:scientificNameID are bdqval:Empty and if a combination of the values of the terms dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:cultivarEpithet, dwc:taxonRank, and dwc:scientificNameAuthorship can be unambiguously resolved to a unique taxon in the bdqval:sourceAuthority, or (4) if ambiguity produced by multiple matches in (2) or (3) can be disambiguated to a unique Taxon using the values of dwc:tribe, dwc:subtribe, dwc:subgenus, dwc:genus, dwc:subfamily, dwc:family, dwc:superfamily, dwc:order, dwc:class, dwc:phylum, dwc:kingdom, dwc:higherClassification, dwc:taxonID, dwc:acceptedNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID and dwc:vernacularName; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

AMENDMENT_SCIENTIFICNAME_FROM_SCIENTIFICNAMEID
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: The value of dwc:scientificNameID is unambiguous if dwc:scientificNameID references a single taxon record in the bdqval:sourceAuthority. When referencing a GBIF taxon by GBIF's identifier for that taxon, use the the pseudo-namespace "gbif:" and the form "gbif:{integer}" as the value for dwc:scientificNameID. Implementers can be aware of the current GBIF api endpoint that can replace the pseduo-namespace gbif: when looking up the dwc:scientificNameID (taxonID in the gbif document), e.g. `s/gbif:/https:\/\/api.gbif.org\/v1\/species\// ` will transform the value taxonID=gbif:8102122 to the resolvable endpoint https://api.gbif.org/v1/species/8102122. The pseudo-namespace "gbif:" is recommended by GBIF to reference GBIF taxon records. Where resolvable persistent identifiers exist for dwc:scientificNameID values, they should be used in full, but implementers will need to support at least the "gbif:" pseudo-namespace.
has data quality dimension: Completeness
description: Proposes an amendment to the value of dwc:scientificName using the dwc:scientificNameID value from the bdqval:sourceAuthority.
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/71
preferred label: Amendment dwc:scientificName from dwc:scientificNameID for SingleRecord

Information Element Consulted dwc:scientificNameID
type: Consulted
composed of: scientificNameID

AmendmentMethod: AMENDMENT_SCIENTIFICNAME_FROM_SCIENTIFICNAMEID with Specification Specification for: AMENDMENT_SCIENTIFICNAME_FROM_SCIENTIFICNAMEID
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1152
note: TG2 Amendment NAME CODED Test VOCABULARY Completeness Parameterized CORE
history note: Source: iDigBio

Specification for: AMENDMENT_SCIENTIFICNAME_FROM_SCIENTIFICNAMEID
type: Specification
example: dwc:scientificNameID="gbif:8102122", dwc:scientificName="": Response.status=FILLED_IN, Response.result=dwc:scientificName="Harpullia pendula F.Muell.", Response.comment="dwc:scientificNameID contains an interpretable value"
example: dwc:scientificNameID="gbif:8a", dwc:scientificName="": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:scientificNameID does not contain an interpretable value"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:Empty, or dwc:scientificName is bdqval:NotEmpty; FILLED_IN the value of dwc:scientificName if the value of dwc: scientificNameID could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:Empty, or dwc:scientificName is bdqval:NotEmpty; FILLED_IN the value of dwc:scientificName if the value of dwc: scientificNameID could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

ISSUE_DATAGENERALIZATIONS_NOTEMPTY
type: Issue
has resource type: SingleRecord
note: This is not specific to spatial data, any value in the dwc:dataGeneralizations field will cause this flag to be raised, but the primary Use Case is expected to be that dwc:dataGeneralizations demonstrates obfuscated locations.
has data quality dimension: Resolution
description: Is there a value in dwc:dataGeneralizations?
has criterion: NotEmpty
issued: 2025-03-06
references: doc-5jp4-5g10
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/72
preferred label: Issue dwc:dataGeneralizations Not Empty for SingleRecord

Resolution
type: DataQualityDimension

Information Element ActedUpon dwc:dataGeneralizations
type: ActedUpon
composed of: dataGeneralizations

doc-5jp4-5g10
type: BibliographicResource
bibliographic citation: Chapman AD (2020) Current Best Practices for Generalizing Sensitive Species Occurrence Data. Copenhagen: GBIF Secretariat. https://doi.org/10.15468/doc-5jp4-5g10

IssueMethod: ISSUE_DATAGENERALIZATIONS_NOTEMPTY with Specification Specification for: ISSUE_DATAGENERALIZATIONS_NOTEMPTY
type: IssueMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/d742991440f2f5fc6ffc75dfe3b6d2ab5b6826b2/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L138
note: TG2 Issue NAME SPACE TIME CODED Test Resolution CORE
history note: Source: ALA

Specification for: ISSUE_DATAGENERALIZATIONS_NOTEMPTY
type: Specification
example: dwc:dataGeneralizations="placed on quarter degree grid": Response.status=RUN_HAS_RESULT, Response.result=POTENTIAL_ISSUE, Response.comment="dwc:dataGeneralizations is bdqval:NotEmpty"
example: dwc:dataGeneralizations="": Response.status=RUN_HAS_RESULT, Response.result=NOT_ISSUE, Response.comment="dwc:dataGeneralizations is bdqval:Empty"
has expected response: POTENTIAL_ISSUE if dwc:dataGeneralizations is bdqval:NotEmpty; otherwise NOT_ISSUE
description: POTENTIAL_ISSUE if dwc:dataGeneralizations is bdqval:NotEmpty; otherwise NOT_ISSUE

AMENDMENT_COUNTRYCODE_FROM_COORDINATES
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: This amendment simply fills dwc:countryCode from a lookup of dwc:decimalLatitude and dwc:decimalLongitude. If the coordinate falls in the high seas outside any national jurisdiction dwc:countryCode="XZ" should be asserted. Values in dwc:coordinateUncertaintyInMeters and dwc:coordinatePrecision (if present) imply a buffer around the provided coordinates. Likewise, country polygons cannot be 100% accurate at all scales (Dooley 2005), so a spatial buffer of the country boundaries is also justified. Taking spatial buffers into account does, however, greatly complicate the logic and the implementation of this and related Tests. In this Test, a detection of multiple country codes by sampling within the buffer, while possible, is not considered.
has data quality dimension: Completeness
description: Proposes an amendment to the value of dwc:countryCode if dwc:decimalLatitude and dwc:decimalLongitude fall within a boundary from the bdqval:countryShapes that is attributable to a single valid ISO 3166-1-alpha-2 country code.
issued: 2025-03-07
references: doc-gg7h-s853
references: marbound
references: Contents
references: ISO 3166-1 alpha-2
references: country-list
references: 12 introducing natural earth data naturaleart.pdf
references: 10m-admin-1-states-provinces
references: v5.1.2
history note: https://github.com/tdwg/bdq/issues/73
preferred label: Amendment dwc:countryCode from Coordinates for SingleRecord

Information Element Consulted dwc:decimalLatitude, dwc:decimalLongitude
type: Consulted
composed of: decimalLatitude
composed of: decimalLongitude

marbound
type: BibliographicResource
bibliographic citation: VLIZ (2023) Marineregions.org. https://www.marineregions.org/downloads.php#marbound

AmendmentMethod: AMENDMENT_COUNTRYCODE_FROM_COORDINATES with Specification Specification for: AMENDMENT_COUNTRYCODE_FROM_COORDINATES
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.1.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2019
note: TG2 Amendment SPACE CODED Test VOCABULARY Completeness ISO/DCMI STANDARD Parameterized CORE
history note: Source: ALA, GBIF, iDigBio

Specification for: AMENDMENT_COUNTRYCODE_FROM_COORDINATES
type: Specification
example: dwc:decimalLatitude="-25.23", dwc:decimalLongitude="135.43", dwc:countryCode="": Response.status=FILLED_IN, Response.result=dwc:countryCode="AU", Response.comment="dwc:decimalLatitude and dwc:decimalLongitude contain interpretable values"
example: dwc:decimalLatitude="-38.280937", dwc:decimalLongitude="72.047790", dwc:countryCode="": Response.status=FILLED_IN, Response.result=dwc:countryCode="XZ", Response.comment="Coordinates do not fall in the boundary of any national jurisdiction, using XZ for high seas"
has authorities defaults: bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if either dwc:decimalLatitude or dwc:decimalLongitude is bdqval:Empty, or if dwc:countryCode is bdqval:NotEmpty; FILLED_IN dwc:countryCode if dwc:decimalLatitude and dwc:decimalLongitude fall within a boundary in the bdqval:sourceAuthority that is attributable to a single valid country code; otherwise NOT_AMENDED.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if either dwc:decimalLatitude or dwc:decimalLongitude is bdqval:Empty, or if dwc:countryCode is bdqval:NotEmpty; FILLED_IN dwc:countryCode if dwc:decimalLatitude and dwc:decimalLongitude fall within a boundary in the bdqval:sourceAuthority that is attributable to a single valid country code; otherwise NOT_AMENDED. bdqval:sourceAuthority default = "10m-admin-1 boundaries UNION with Exclusive Economic Zones" {[https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/] spatial UNION [https://www.marineregions.org/downloads.php#marbound]}

Default value for bdqval:sourceAuthority:"10m-admin-1 boundaries UNION with Exclusive Economic Zones"
type: Argument
has argument value: 10m-admin-1 boundaries UNION with Exclusive Economic Zones
has parameter: sourceAuthority

AMENDMENT_OCCURRENCESTATUS_ASSUMEDDEFAULT
type: Amendment
has resource type: SingleRecord
has enhancement: AssumedDefault
note: There is currently a capitalization mismatch between https://dwc.tdwg.org/terms/#dwc:occurrenceStatus recommended values and the GBIF vocabulary at (https://api.gbif.org/v1/vocabularies/OccurrenceStatus/concepts).
has data quality dimension: Completeness
description: Proposes an amendment of the value of dwc:occurrenceStatus to the default parameter value if dwc:occurrenceStatus, dwc:individualCount and dwc:organismQuantity are empty.
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/75
preferred label: Amendment dwc:occurrenceStatus Assumed Default for SingleRecord

AssumedDefault
type: Enhancement

Information Element ActedUpon dwc:occurrenceStatus
type: ActedUpon
composed of: occurrenceStatus

Information Element Consulted dwc:individualCount, dwc:organismQuantity
type: Consulted
composed of: individualCount
composed of: organismQuantity

AmendmentMethod: AMENDMENT_OCCURRENCESTATUS_ASSUMEDDEFAULT with Specification Specification for: AMENDMENT_OCCURRENCESTATUS_ASSUMEDDEFAULT
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1021
note: TG2 Amendment OTHER CODED Test VOCABULARY Completeness Parameterized CORE
history note: Source: ALA

Specification for: AMENDMENT_OCCURRENCESTATUS_ASSUMEDDEFAULT
type: Specification
example: dwc:occurrenceStatus="", dwc:individualCount="", dwc:organismQuantity="": Response.status=FILLED_IN, Response.result=dwc:occurrenceStatus="present", Response.comment="dwc:occurrenceStatus is bdqval:Empty; assumed "present""
example: dwc:occurrenceStatus="X", dwc:individualCount="10", dwc:organismQuantity="": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:occurrenceStatus is bdqval:NotEmpty"
has authorities defaults: bdqval:defaultOccurrenceStatus default = "present"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:occurrenceStatus is bdqval:NotEmpty; FILLED_IN the value of dwc:occurrenceStatus using the bdqval:defaultOccurrenceStatus Parameter value if dwc:occurrenceStatus,dwc:individualCount and dwc:organismQuantity are bdqval:Empty; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:occurrenceStatus is bdqval:NotEmpty; FILLED_IN the value of dwc:occurrenceStatus using the bdqval:defaultOccurrenceStatus Parameter value if dwc:occurrenceStatus,dwc:individualCount and dwc:organismQuantity are bdqval:Empty; otherwise NOT_AMENDED bdqval:defaultOccurrenceStatus default = "present"

Default value for bdqval:defaultOccurrenceStatus:"present"
type: Argument
has argument value: present
has parameter: defaultOccurrenceStatus

VALIDATION_DATEIDENTIFIED_INRANGE
type: Validation
has resource type: SingleRecord
note: There may be valid identifications prior to Linnaeus, but this Test will flag these under the default value of bdqval:earliestValidDate, as for most biodiversity data, pre-Linnaean identification dates are likely to be errors. If a parameter is not set, then the default is 1753-01-01. This Test will, by design, flag as problematic cases (such as LTER plots and marine mammal sightings) where a known individual organism is identified by a specialist and then subsequently observed without new taxonomic identifications being made.
has data quality dimension: Likeliness
description: Is the value of dwc:dateIdentified within Parameters range and does it overlap with or is it later than dwc:eventDate?
has criterion: InRange
issued: 2025-03-07
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/76
preferred label: Validation dwc:dateIdentified In Range for SingleRecord

Likeliness
type: DataQualityDimension

ValidationMethod: VALIDATION_DATEIDENTIFIED_INRANGE with Specification for: VALIDATION_DATEIDENTIFIED_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCOtherDateDQ.java#L124
note: TG2 Validation TIME CODED Test Likeliness ISO/DCMI STANDARD Parameterized CORE
history note: Source: GBIF, ALA

Specification for: VALIDATION_DATEIDENTIFIED_INRANGE
type: Specification
example: dwc:dateIdentified="1963-03-08T14:07-0600", dwc:eventDate="1962-11-01T10:00-0600": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:dateIdentified is in range"
example: dwc:dateIdentified="1963-03-08T14:07-0600", dwc:eventDate="1964-11-01T10:00-0600": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:dateIdentified before dwc:eventDate"
has authorities defaults: bdqval:earliestValidDate default = "1753-01-01",bdqval:latestValidDate default = "{current day}",bdqval:includeEventDate default = "true"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:dateIdentified is bdqval:Empty, or (2) dwc:dateIdentified contains an invalid value according to ISO 8601, or (3) bdqval:includeEventDate=true and dwc:eventDate is not a valid ISO 8601 date; COMPLIANT if the value of dwc:dateIdentified is between bdqval:earliestValidDate and bdqval:latestValidDate inclusive and either (1) dwc:eventDate is bdqval:Empty or bdqval:includeEventDate=false, or (2) if dwc:eventDate is a valid ISO 8601 date and dwc:dateIdentified overlaps or is later than the dwc:eventDate; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:dateIdentified is bdqval:Empty, or (2) dwc:dateIdentified contains an invalid value according to ISO 8601, or (3) bdqval:includeEventDate=true and dwc:eventDate is not a valid ISO 8601 date; COMPLIANT if the value of dwc:dateIdentified is between bdqval:earliestValidDate and bdqval:latestValidDate inclusive and either (1) dwc:eventDate is bdqval:Empty or bdqval:includeEventDate=false, or (2) if dwc:eventDate is a valid ISO 8601 date and dwc:dateIdentified overlaps or is later than the dwc:eventDate; otherwise NOT_COMPLIANT bdqval:earliestValidDate default = "1753-01-01",bdqval:latestValidDate default = "{current day}",bdqval:includeEventDate default = "true"

Default value for bdqval:earliestValidDate:"1753-01-01"
type: Argument
has argument value: 1753-01-01
has parameter: earliestValidDate

Default value for bdqval:latestValidDate:"{current day}"
type: Argument
has argument value: {current day}
has parameter: latestValidDate

Default value for bdqval:includeEventDate:"true"
type: Argument
has argument value: true
has parameter: includeEventDate

VALIDATION_CLASS_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:class occur at the rank of Class in bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/77
preferred label: Validation dwc:class Found for SingleRecord

Information Element ActedUpon dwc:class
type: ActedUpon
composed of: class

ValidationMethod: VALIDATION_CLASS_FOUND with Specification for: VALIDATION_CLASS_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1345
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE

Specification for: VALIDATION_CLASS_FOUND
type: Specification
example: dwc:class="Insecta": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:class has an equivalent at the rank of Class in the bdqval:sourceAuthority"
example: dwc:class="Magnoleopsida": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT,Response.comment="dwc:class does not have an equivalent at the rank of Class in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:class is bdqval:Empty; COMPLIANT if the value of dwc:class is found as a value at the rank of Class in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:class is bdqval:Empty; COMPLIANT if the value of dwc:class is found as a value at the rank of Class in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_GEODETICDATUM_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:geodeticDatum?
has criterion: NotEmpty
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/78
preferred label: Validation dwc:geodeticDatum Not Empty for SingleRecord

ValidationMethod: VALIDATION_GEODETICDATUM_NOTEMPTY with Specification for: VALIDATION_GEODETICDATUM_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2105
note: TG2 Validation SPACE CODED Test Completeness CORE

Specification for: VALIDATION_GEODETICDATUM_NOTEMPTY
type: Specification
example: dwc:geodeticDatum="UTM": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:geodeticDatum is bdqval:NotEmpty"
example: dwc:geodeticDatum="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:geodeticDatum is bdqval:Empty."
has expected response: COMPLIANT if dwc:geodeticDatum is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:geodeticDatum is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_DECIMALLATITUDE_INRANGE
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:decimalLatitude a number between -90 and 90 inclusive?
has criterion: InRange
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/79
preferred label: Validation dwc:decimalLatitude In Range for SingleRecord

Information Element ActedUpon dwc:decimalLatitude
type: ActedUpon
composed of: decimalLatitude

ValidationMethod: VALIDATION_DECIMALLATITUDE_INRANGE with Specification for: VALIDATION_DECIMALLATITUDE_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2140
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: ALA, GBIF, OBIS

Specification for: VALIDATION_DECIMALLATITUDE_INRANGE
type: Specification
example: dwc:decimalLatitude="0.0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:decimalLatitude is in RANGE"
example: dwc:decimalLatitude="121.0534": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:decimalLatitude is in not in RANGE"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLatitude is bdqval:Empty or the value is not interpretable as a number; COMPLIANT if the value of dwc:decimalLatitude is between -90 and 90, inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLatitude is bdqval:Empty or the value is not interpretable as a number; COMPLIANT if the value of dwc:decimalLatitude is between -90 and 90, inclusive; otherwise NOT_COMPLIANT

VALIDATION_KINGDOM_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:kingdom occur at the rank of Kingdom in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/81
preferred label: Validation dwc:kingdom Found for SingleRecord

Information Element ActedUpon dwc:kingdom
type: ActedUpon
composed of: kingdom

ValidationMethod: VALIDATION_KINGDOM_FOUND with Specification for: VALIDATION_KINGDOM_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1386
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: GBIF

Specification for: VALIDATION_KINGDOM_FOUND
type: Specification
example: dwc:kingdom="Animalia": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:kingdom has an equivalent at the rank of Kingdom in the bdqval:sourceAuthority"
example: dwc:kingdom="Metazoa": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:kingdom does not strictly have an equivalent at the rank of Kingdom in the Parameterized Source Authority (Metazoa is synonym of Animalia)"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:kingdom is bdqval:Empty; COMPLIANT if the value of dwc:kingdom is found as a value at the rank of kingdom in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:kingdom is bdqval:Empty; COMPLIANT if the value of dwc:kingdom is found as a value at the rank of kingdom in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_SCIENTIFICNAME_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:scientificName?
has criterion: NotEmpty
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/82
preferred label: Validation dwc:scientificName Not Empty for SingleRecord

ValidationMethod: VALIDATION_SCIENTIFICNAME_NOTEMPTY with Specification for: VALIDATION_SCIENTIFICNAME_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1426
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: ALA,GBIF,OBIS

Specification for: VALIDATION_SCIENTIFICNAME_NOTEMPTY
type: Specification
example: dwc:scientificName="?": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificName is bdqval:NotEmpty"
example: dwc:scientificName="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificName is bdqval:Empty"
has expected response: COMPLIANT if dwc:scientificName is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:scientificName is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_ORDER_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:order occur at the rank of Order in bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/83
preferred label: Validation dwc:order Found for SingleRecord

Information Element ActedUpon dwc:order
type: ActedUpon
composed of: order

ValidationMethod: VALIDATION_ORDER_FOUND with Specification for: VALIDATION_ORDER_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1459
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: iDigBio

Specification for: VALIDATION_ORDER_FOUND
type: Specification
example: dwc:order="Lepidoptera": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:order has an equivalent at the rank of Order in the bdqval:sourceAuthority"
example: dwc:order="Nymphalidae": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:order does not have an equivalent at the rank of Order in the bdqval:sourceAuthority. Nymphalidae is a family, not an order"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:order is bdqval:Empty; COMPLIANT if the value of dwc:order is found as a value at the rank of Order in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:order is bdqval:Empty; COMPLIANT if the value of dwc:order is found as a value at the rank of Order in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_YEAR_INRANGE
type: Validation
has resource type: SingleRecord
note: The results of this Test are time-dependent. Next year is not valid now. Next year it will be. This Test provides the option to designate lower and upper limits to the year. The upper limit, if not provided, should default to the year when the Test is run. This Test provides for a default earliest date (year), of 1582 by convention. That value was chosen because ISO 8601-1 asserts that "the use of proleptic Gregorian calendar dates prior are not allowed in ISO 8601-1 without prior agreement of the parties exchanging data", and Darwin Core provides no such prior agreement.
has data quality dimension: Conformance
description: Is the value of dwc:year within the Parameter range?
has criterion: InRange
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/84
preferred label: Validation dwc:year In Range for SingleRecord

ValidationMethod: VALIDATION_YEAR_INRANGE with Specification for: VALIDATION_YEAR_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L2277
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: VertNet

Specification for: VALIDATION_YEAR_INRANGE
type: Specification
example: dwc:year="1952": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:year is in RANGE"
example: dwc:year="9999": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:year is not in RANGE. The value in year has not yet come to pass."
has authorities defaults: bdqval:earliestValidDate default = "1582",bdqval:latestValidDate default = "{current year}"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:year is bdqval:Empty or cannot be interpreted as an integer; COMPLIANT if the value of dwc:year is within the range bdqval:earliestValidDate to bdqval:latestValidDate inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:year is bdqval:Empty or cannot be interpreted as an integer; COMPLIANT if the value of dwc:year is within the range bdqval:earliestValidDate to bdqval:latestValidDate inclusive; otherwise NOT_COMPLIANT bdqval:earliestValidDate default = "1582",bdqval:latestValidDate default = "{current year}"

Default value for bdqval:earliestValidDate:"1582"
type: Argument
has argument value: 1582
has parameter: earliestValidDate

Default value for bdqval:latestValidDate:"{current year}"
type: Argument
has argument value: {current year}
has parameter: latestValidDate

AMENDMENT_EVENTDATE_FROM_VERBATIM
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: If the proposed eventDate is prior to 1918-02-14, the Response.comment will include a note that the "verbatimDate was assumed to be in the Gregorian calendar". When running the Test, the original precision, e.g. year=1980, month=1 should be retained, e.g. dwc:eventDate should become 1980-01, not 1980-01-01/1980-01-31.
has data quality dimension: Completeness
description: Proposes an amendment to the value of dwc:eventDate from the content of dwc:verbatimEventDate.
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/86
preferred label: Amendment dwc:eventDate from dwc:verbatimEventDate for SingleRecord

Information Element Consulted dwc:verbatimEventDate
type: Consulted
composed of: verbatimEventDate

AmendmentMethod: AMENDMENT_EVENTDATE_FROM_VERBATIM with Specification Specification for: AMENDMENT_EVENTDATE_FROM_VERBATIM
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L334. For a minimum set of unit tests see: [DwcEventDQTest](https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/test/java/org/filteredpush/qc/date/DwcEventDQTest.java#L605), see also unit tests for underlying implementation in [DateUtilsTest](https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/test/java/org/filteredpush/qc/date/DateUtilsTest.java#L632) and [DateUtilsTest](https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/test/java/org/filteredpush/qc/date/DateUtilsTest.java#L788)
note: TG2 Amendment TIME CODED Test Completeness CORE
history note: Source: VertNet, FP, Kurator

Specification for: AMENDMENT_EVENTDATE_FROM_VERBATIM
type: Specification
example: dwc:eventDate="", dwc:verbatimEventDate="Friday 29th Oct. 2021": Response.status=FILLED_IN, Response.result=dwc:eventDate="2021-10-29", Response.comment="dwc:verbatimEventDate contains an interpretable value (assuming some external lookup thesauri)"
example: dwc:eventDate="", dwc:verbatimEventDate="03/04/2020": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:verbatimEventDate is ambiguous - could be either 3rd April or 4th March"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:NotEmpty or the value of dwc:verbatimEventDate is bdqval:Empty; FILLED_IN the value of dwc:eventDate if an unambiguous ISO 8601 date is interpreted from dwc:verbatimEventDate; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:NotEmpty or the value of dwc:verbatimEventDate is bdqval:Empty; FILLED_IN the value of dwc:eventDate if an unambiguous ISO 8601 date is interpreted from dwc:verbatimEventDate; otherwise NOT_AMENDED

VALIDATION_COORDINATES_NOTZERO
type: Validation
has resource type: SingleRecord
note: A record with 0.0 is interpreted as the string "0".
has data quality dimension: Likeliness
description: Are the values of either dwc:decimalLatitude or dwc:decimalLongitude numbers that are not equal to 0?
has criterion: Likely
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/87
preferred label: Validation Coordinates Not Zero for SingleRecord

Likely
type: Criterion

ValidationMethod: VALIDATION_COORDINATES_NOTZERO with Specification for: VALIDATION_COORDINATES_NOTZERO
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2193
note: TG2 Validation SPACE CODED Test Likeliness CORE
history note: Source: ALA, GBIF, OBIS

Specification for: VALIDATION_COORDINATES_NOTZERO
type: Specification
example: dwc:decimalLatitude="21.0534", dwc:decimalLongitude="81.0554": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:decimalLatitude and dwc:decimalLongitude are not zero"
example: dwc:decimalLatitude="0", dwc:decimalLongitude="0",: Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:decimalLatitude and dwc:decimalLongitude are zero"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLatitude is bdqval:Empty or is not interpretable as a number, or dwc:decimalLongitude is bdqval:Empty or is not interpretable as a number; COMPLIANT if either the value of dwc:decimalLatitude is not = 0 or the value of dwc:decimalLongitude is not = 0; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:decimalLatitude is bdqval:Empty or is not interpretable as a number, or dwc:decimalLongitude is bdqval:Empty or is not interpretable as a number; COMPLIANT if either the value of dwc:decimalLatitude is not = 0 or the value of dwc:decimalLongitude is not = 0; otherwise NOT_COMPLIANT

VALIDATION_EVENTTEMPORAL_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: Only fails if all of the relevant fields of the Darwin Core Event class are bdqval:Empty or do not exist. Relevant Darwin Core fields include dwc:eventDate, dwc:verbatimEventDate, dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear. The terms dwc:eventID (if populated may or may not point to temporal information accessible to the user of the data) and dwc:eventTime (which is rare) are not included.
has data quality dimension: Completeness
description: Is there a value in any of the terms dwc:eventDate, dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear, dwc:verbatimEventDate?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/88
preferred label: Validation dwc:Event Temporal Not Empty for SingleRecord

Information Element ActedUpon dwc:eventDate, dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear, dwc:verbatimEventDate
type: ActedUpon
composed of: eventDate
composed of: year
composed of: month
composed of: day
composed of: startDayOfYear
composed of: endDayOfYear
composed of: verbatimEventDate

ValidationMethod: VALIDATION_EVENTTEMPORAL_NOTEMPTY with Specification for: VALIDATION_EVENTTEMPORAL_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1968
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: @Tasilee

Specification for: VALIDATION_EVENTTEMPORAL_NOTEMPTY
type: Specification
example: dwc:day="", dwc:month="", dwc:year="", dwc:eventDate="1962-11-01T10:00-0600", dwc:verbatimEventDate="", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:eventDate is bdqval:NotEmpty"
example: dwc:dateIdentified="", dwc:day="", dwc:month="", dwc:year="", dwc:eventDate="", dwc:verbatimEventDate="", dwc:startDayOfYear="", dwc:endDayOfYear="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="All input fields bdqval:Empty"
has expected response: COMPLIANT if any of dwc:eventDate, dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear, dwc:verbatimEventDate are bdqval:NotEmpty; otherwise NOT_COMPLIANT.
description: COMPLIANT if any of dwc:eventDate, dwc:year, dwc:month, dwc:day, dwc:startDayOfYear, dwc:endDayOfYear, dwc:verbatimEventDate are bdqval:NotEmpty; otherwise NOT_COMPLIANT.

VALIDATION_DCTYPE_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters. EXTERNAL_PREREQUISITES_NOT_MET is not a necessary path in the specification, the type literals may be hard coded in a Test implementation without an external call.
has data quality dimension: Conformance
description: Does the value of dc:type occur as a value in the DCMI type vocabulary?
has criterion: Standard
issued: 2025-03-07
references: dcmi-type-vocabulary
history note: https://github.com/tdwg/bdq/issues/91
preferred label: Validation dc:type Standard for SingleRecord

ValidationMethod: VALIDATION_DCTYPE_STANDARD with Specification for: VALIDATION_DCTYPE_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1070
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: VertNet

Specification for: VALIDATION_DCTYPE_STANDARD
type: Specification
example: dc:type="Event": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dc:type matches a term in DCMI Vocabulary"
example: dc:type="StillerImage": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dc:type does not match terms in DCMI Vocabulary"
has authorities defaults: DCMI Type Vocabulary" {[http://purl.org/dc/terms/DCMIType]} {"DCMI Type Vocabulary List of Terms" [https://www.dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/2010-10-11/]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dc:type is bdqval:Empty; COMPLIANT if the value of dc:type is a term name in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the value of dc:type is bdqval:Empty; COMPLIANT if the value of dc:type is a term name in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT DCMI Type Vocabulary" {[http://purl.org/dc/terms/DCMIType]} {"DCMI Type Vocabulary List of Terms" [https://www.dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/2010-10-11/]}

AMENDMENT_EVENTDATE_FROM_YEARMONTHDAY
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: An attempt to populate dwc:eventDate from dwc:verbatimEventDate and from dwc:startDayOfYear and dwc:endDayOfYear should be made before this Test is run. If dwc:year and dwc:day are present and interpretable, but dwc:month is not supplied or is not interpretable, then just the year should be given as the proposed amendment. This Test assumes that that dwc:year, dwc:month, dwc:day are in a Gregorian calendar, and that only those three pieces of information are needed to produce a dwc:eventDate (explicitly in ISO 8601-1 format, and thus using the Gregorian calendar). When running the Test, the original precision, e.g. dwc:year=1980, dwc:month=1 should be retained, e.g. dwc:eventDate should become 1980-01, not 1980-01-01/1980-01-31.
has data quality dimension: Completeness
description: Proposes an amendment to the value of dwc:eventDate from values in dwc:year, dwc:month and dwc:day.
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/93
preferred label: Amendment dwc:eventDate from dwc:year dwc:month dwc:day for SingleRecord

Information Element Consulted dwc:year, dwc:month, dwc:day
type: Consulted
composed of: year
composed of: month
composed of: day

AmendmentMethod: AMENDMENT_EVENTDATE_FROM_YEARMONTHDAY with Specification Specification for: AMENDMENT_EVENTDATE_FROM_YEARMONTHDAY
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1395
note: TG2 Amendment TIME CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: AMENDMENT_EVENTDATE_FROM_YEARMONTHDAY
type: Specification
example: dwc:eventDate="", dwc:year="1420", dwc:month="10", dwc:day="29": Response.status=FILLED_IN, Response.result=dwc:eventDate="1420-10-29", Response.comment="dwc:year, dwc:month and dwc:day are interpretable, even if pre-Linnaeus"
example: dwc:eventDate="", dwc:year="2024", dwc:month="2", dwc:day="30": Response.status=NOT_AMENDED, Response.result=, Response.comment="Not a valid date"
has expected response: INTERNAL _PREREQUISITES_NOT_MET if dwc:eventDate is not EMPTY or dwc:year is EMPTY or is not interpretable as an integer; FILLED_IN the value of dwc:eventDate if an ISO 8601 date was interpreted from the values in dwc:year, dwc:month and dwc:day; otherwise NOT_AMENDED
description: INTERNAL _PREREQUISITES_NOT_MET if dwc:eventDate is not EMPTY or dwc:year is EMPTY or is not interpretable as an integer; FILLED_IN the value of dwc:eventDate if an ISO 8601 date was interpreted from the values in dwc:year, dwc:month and dwc:day; otherwise NOT_AMENDED

ISSUE_ESTABLISHMENTMEANS_NOTEMPTY
type: Issue
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:establishmentMeans?
has criterion: NotEmpty
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/94
preferred label: Issue dwc:establishmentMeans Not Empty for SingleRecord

Information Element ActedUpon dwc:establishmentMeans
type: ActedUpon
composed of: establishmentMeans

IssueMethod: ISSUE_ESTABLISHMENTMEANS_NOTEMPTY with Specification Specification for: ISSUE_ESTABLISHMENTMEANS_NOTEMPTY
type: IssueMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L241
note: TG2 Issue OTHER CODED Test Completeness CORE
history note: Source: ALA, CRIA

Specification for: ISSUE_ESTABLISHMENTMEANS_NOTEMPTY
type: Specification
example: dwc:establishmentMeans="?": Response.status=RUN_HAS_RESULT, Response.result=POTENTIAL_ISSUE, Response.comment="dwc:establishmentMeans is bdqval:NotEmpty"
example: dwc:establishmentMeans="": Response.status=RUN_HAS_RESULT, Response.result=NOT_ISSUE, Response.comment="dwc:establishmentMeans is bdqval:Empty"
has expected response: POTENTIAL_ISSUE if dwc:establishmentMeans is bdqval:NotEmpty; otherwise NOT_ISSUE
description: POTENTIAL_ISSUE if dwc:establishmentMeans is bdqval:NotEmpty; otherwise NOT_ISSUE

VALIDATION_DECIMALLONGITUDE_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:decimalLongitude?
has criterion: NotEmpty
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/96
preferred label: Validation dwc:decimalLongitude Not Empty for SingleRecord

ValidationMethod: VALIDATION_DECIMALLONGITUDE_NOTEMPTY with Specification for: VALIDATION_DECIMALLONGITUDE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2273
note: TG2 Validation SPACE CODED Test Completeness CORE

Specification for: VALIDATION_DECIMALLONGITUDE_NOTEMPTY
type: Specification
example: dwc:decimalLongitude="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:decimalLongitude is bdqval:NotEmpty"
example: dwc:decimalLongitude=" ": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:decimalLongitude is bdqval:Empty"
has expected response: COMPLIANT if dwc:decimalLongitude is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:decimalLongitude is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_COUNTRYCODE_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: Darwin Core recommends that data from the high seas (outside national jurisdictions) use dwc:countryCode = "XZ".
has data quality dimension: Completeness
description: Is there a value in dwc:countryCode?
has criterion: NotEmpty
issued: 2025-03-07
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
references: country-list
history note: https://github.com/tdwg/bdq/issues/98
preferred label: Validation dwc:countryCode Not Empty for SingleRecord

ValidationMethod: VALIDATION_COUNTRYCODE_NOTEMPTY with Specification for: VALIDATION_COUNTRYCODE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2308
note: TG2 Validation SPACE CODED Test VOCABULARY Completeness CORE

Specification for: VALIDATION_COUNTRYCODE_NOTEMPTY
type: Specification
example: dwc:countryCode="Australia": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:countryCode is bdqval:NotEmpty"
example: dwc:countryCode="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:countryCode is bdqval:Empty"
has expected response: COMPLIANT if dwc:countryCode is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:countryCode is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_LICENSE_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: The license at the record level might be derived from the license of the dataset from which the record is retrieved.
has data quality dimension: Completeness
description: Is there a value in dcterms:license?
has criterion: NotEmpty
issued: 2025-03-07
references: LicenseDocument
references: licenses
history note: https://github.com/tdwg/bdq/issues/99
preferred label: Validation dcterms:license Not Empty for SingleRecord

ValidationMethod: VALIDATION_LICENSE_NOTEMPTY with Specification for: VALIDATION_LICENSE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L274
note: TG2 Validation OTHER CODED Test Completeness CORE

Specification for: VALIDATION_LICENSE_NOTEMPTY
type: Specification
example: dcterms:license="CC0 1.0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dcterms:license is bdqval:NotEmpty"
example: dcterms:license=" ": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dcterms:license is bdqval:Empty"
has expected response: COMPLIANT if dcterms:license is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dcterms:license is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_POLYNOMIAL_CONSISTENT
type: Validation
has resource type: SingleRecord
note: If dwc:specificEpithet is populated then this Test expects that the value dwc:specificEpithet is the name of the second or species epithet of the scientificName. If dwc:genericName is populated, this Test expects that the value of dwc:genus is the first word of the value of dwc:scientificName. If dwc:specificEpithet is populated then this Test expects that the value dwc:specificEpithet is the name of the first or species epithet of the scientificName. If dwc:infraspecificEpithet is populated, then this Test expects that the value of dwc:infraspecificEpithet is the name of the lowest or terminal infraspecific epithet of the scientificName, excluding any rank designation.
has data quality dimension: Consistency
description: Is the polynomial represented in dwc:scientificName consistent with the equivalent values in dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet?
has criterion: Consistent
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/101
preferred label: Validation Polynomial Consistent for SingleRecord

Information Element ActedUpon dwc:scientificName, dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet
type: ActedUpon
composed of: scientificName
composed of: genericName
composed of: specificEpithet
composed of: infraspecificEpithet

ValidationMethod: VALIDATION_POLYNOMIAL_CONSISTENT with Specification for: VALIDATION_POLYNOMIAL_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1570
note: TG2 Validation NAME CODED Test Consistency CORE
history note: Source: Paula Zermoglio

Specification for: VALIDATION_POLYNOMIAL_CONSISTENT
type: Specification
example: dwc:scientificName="Hakea decurrens ssp. physocarpa", dwc:genericName="", dwc:specificEpithet="decurrens", dwc:infraspecificEpithet="physocarpa": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="Values of all non-empty atomic terms are found in the polynomial"
example: dwc:scientificName="Hakea decurrens", dwc:genericName="Hakea", dwc:specificEpithet="decurrens", dwc:infraspecificEpithet="physocarpa": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificName is inconsistent with atomic parts (dwc:genus, dwc:specificEpithet and dwc:infraspecificEpithet)"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificName is bdqval:Empty, or all of dwc:genericName, dwc:specificEpithet and dwc:infraspecificEpithet are bdqval:Empty; COMPLIANT if the polynomial, as represented in dwc:scientificName, is consistent with bdqval:NotEmpty values of dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet; otherwise NOT_COMPLIANT.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificName is bdqval:Empty, or all of dwc:genericName, dwc:specificEpithet and dwc:infraspecificEpithet are bdqval:Empty; COMPLIANT if the polynomial, as represented in dwc:scientificName, is consistent with bdqval:NotEmpty values of dwc:genericName, dwc:specificEpithet, dwc:infraspecificEpithet; otherwise NOT_COMPLIANT.

AMENDMENT_GEODETICDATUM_ASSUMEDDEFAULT
type: Amendment
has resource type: SingleRecord
has enhancement: AssumedDefault
note: The value of dwc:geodeticDatum applies to dwc:decimalLatitude and dwc:decimalLongitude, thus EPSG:4326 (https://epsg.org/crs_4326/WGS-84.html) is the appropriate EPSG code as it applies to the WGS84 datum used with a geographic coordinate system. If the dwc:coordinateUncertaintyInMeters is bdqval:Empty, not interpretable, or not valid, this amendment should not provide a dwc:coordinateUncertaintyInMeters. If the dwc:coordinateUncertaintyInMeters is bdqval:NotEmpty and is valid, this amendment should add to the dwc:coordinateUncertaintyInMeters the uncertainty contributed by the maximum datum shift at the given coordinates. Since different systems have differing requirements for what the default datum should be, it is left unspecified, but should match whatever the target datum is in AMENDMENT_COORDINATES_CONVERTED (620749b9-7d9c-4890-97d2-be3d1cde6da8). After the amendment is performed, the dwc:geodeticDatum field should be the assumed default datum as parameterized. An example implementation to determine the uncertainty added by asserting a default datum (datum shift) where a known datum is not declared can be found in [datumshiftproj.py](https://github.com/VertNet/georefcalculator/blob/master/source/python/datumshiftproj.py) in the source code for the [Georeferencing Calculator](https://georeferencing.org/calculator/) (Wieczorek & Wieczorek 2021). Included in the source code is a [5-degree grid](https://github.com/VertNet/georefcalculator/blob/master/datumerrordata.js) of datum shifts from an unknown datum to WGS84.
has data quality dimension: Completeness
description: Proposes an amendment to fill in dwc:geodeticDatum using a parameterized value if the dwc:geodeticDatum is empty.
issued: 2025-03-07
references: epsg.io
references: epsg.org
references: spatialreference.org
references: about.html
references: doc-gg7h-s853
references: calculator
history note: https://github.com/tdwg/bdq/issues/102
preferred label: Amendment dwc:geodeticDatum Assumed Default for SingleRecord

Information Element ActedUpon dwc:geodeticDatum, dwc:coordinateUncertaintyInMeters
type: ActedUpon
composed of: geodeticDatum
composed of: coordinateUncertaintyInMeters

AmendmentMethod: AMENDMENT_GEODETICDATUM_ASSUMEDDEFAULT with Specification Specification for: AMENDMENT_GEODETICDATUM_ASSUMEDDEFAULT
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2349
note: TG2 Amendment SPACE CODED Test Completeness Parameterized CORE
history note: Source: ALA, GBIF

Specification for: AMENDMENT_GEODETICDATUM_ASSUMEDDEFAULT
type: Specification
example: dwc:geodeticDatum="[null]", dwc:decimalLatitude="-30.00", dwc:decimalLongitude="130.00", dwc:coordinateUncertaintyInMeters="50": Response.status=AMENDED, Response.result=dwc:geodeticDatum="EPSG:4326", dwc:coordinateUncertaintyInMeters="2836", Response.comment="dwc:godeticDatum is bdqval:Empty so filled in with default and dwc:coordinateUncertaintyInMeters amended to maximum possible value"
example: dwc:geodeticDatum="WGS84", dwc:decimalLatitude="", dwc:decimalLongitude="", dwc:coordinateUncertaintyInMeters="": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:geodeticDatum contains a value"
has authorities defaults: bdqval:defaultGeodeticDatum default = "EPSG:4326"
has expected response: If dwc:geodeticDatum is bdqval:Empty, fill in dwc:geodeticDatum using the value of bdqval:defaultGeodeticDatum, report FILLED_IN and, if dwc:coordinateUncertaintyInMeters, dwc:decimalLatitude and dwc:decimalLongitude are bdqval:NotEmpty, amend the value of dwc:coordinateUncertaintyInMeters by adding the maximum datum shift between the specified bdqval:defaultGeodeticDatum and any other datum at the provided dwc:decimalLatitude and dwc:decimalLongitude and instead report AMENDED; otherwise NOT_AMENDED.
description: If dwc:geodeticDatum is bdqval:Empty, fill in dwc:geodeticDatum using the value of bdqval:defaultGeodeticDatum, report FILLED_IN and, if dwc:coordinateUncertaintyInMeters, dwc:decimalLatitude and dwc:decimalLongitude are bdqval:NotEmpty, amend the value of dwc:coordinateUncertaintyInMeters by adding the maximum datum shift between the specified bdqval:defaultGeodeticDatum and any other datum at the provided dwc:decimalLatitude and dwc:decimalLongitude and instead report AMENDED; otherwise NOT_AMENDED. bdqval:defaultGeodeticDatum default = "EPSG:4326"

Default value for bdqval:defaultGeodeticDatum:"EPSG:4326"
type: Argument
has argument value: EPSG:4326
has parameter: defaultGeodeticDatum

VALIDATION_DCTYPE_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dc:type?
has criterion: NotEmpty
issued: 2025-03-07
references: dcmi-type-vocabulary
history note: https://github.com/tdwg/bdq/issues/103
preferred label: Validation dc:type Not Empty for SingleRecord

ValidationMethod: VALIDATION_DCTYPE_NOTEMPTY with Specification for: VALIDATION_DCTYPE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L308
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: VALIDATION_DCTYPE_NOTEMPTY
type: Specification
example: dc:type="?": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dc:type is bdqval:NotEmpty"
example: dc:type=" ": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dc:type is bdqval:Empty"
has expected response: COMPLIANT if dc:type is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dc:type is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_BASISOFRECORD_STANDARD
type: Validation
has resource type: SingleRecord
note: 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.
has data quality dimension: Conformance
description: Does the value of dwc:basisOfRecord occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/104
preferred label: Validation dwc:basisOfRecord Standard for SingleRecord

ValidationMethod: VALIDATION_BASISOFRECORD_STANDARD with Specification for: VALIDATION_BASISOFRECORD_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L342
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: VertNet

Specification for: VALIDATION_BASISOFRECORD_STANDARD
type: Specification
example: 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"
example: 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"
has authorities defaults: bdqval: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]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:basisOfRecord is bdqval:Empty; COMPLIANT if the value of dwc:basisOfRecord is valid in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:basisOfRecord is bdqval:Empty; COMPLIANT if the value of dwc:basisOfRecord is valid in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval: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]}

Default value for bdqval:sourceAuthority:"Darwin Core basisOfRecord"
type: Argument
has argument value: Darwin Core basisOfRecord
has parameter: sourceAuthority

VALIDATION_TAXON_NOTEMPTY
type: Validation
has resource type: SingleRecord
note: This tests for records that have no taxonomic (NAME) information. If there is any value for any of the Information Elements, this may be useful information. See example.
has data quality dimension: Completeness
description: Is there a value in any of the terms needed to determine that the taxon exists?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/105
preferred label: Validation dwc:Taxon Not Empty for SingleRecord

urn:…
type: ActedUpon
composed of: taxonID
composed of: scientificNameID
composed of: acceptedNameUsageID
composed of: parentNameUsageID
composed of: originalNameUsageID
composed of: taxonConceptID
composed of: scientificName
composed of: higherClassification
composed of: kingdom
composed of: phylum
composed of: class
composed of: order
composed of: superfamily
composed of: family
composed of: subfamily
composed of: tribe
composed of: subtribe
composed of: genus
composed of: genericName
composed of: subgenus
composed of: infragenericEpithet
composed of: specificEpithet
composed of: infraspecificEpithet
composed of: vernacularName
composed of: cultivarEpithet
label: Information Element ActedUpon dwc:taxonID, dwc:scientificNameID, dwc:acceptedNameUsageID, dwc:parentNameUsageID, dwc:originalNameUsageID, dwc:taxonConceptID, dwc:scientificName, dwc:higherClassification, dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus, dwc:genericName, dwc:subgenus, dwc:infragenericEpithet, dwc:specificEpithet, dwc:infraspecificEpithet, dwc:vernacularName, dwc:cultivarEpithet

ValidationMethod: VALIDATION_TAXON_NOTEMPTY with Specification for: VALIDATION_TAXON_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1761
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: Lee Belbin

Specification for: VALIDATION_TAXON_NOTEMPTY
type: Specification
example: dwc:taxonID="", dwc:scientificNameID="", dwc:acceptedNameUsageID="", dwc:parentNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="Eucalyptus gunnii", dwc:higherClassification="", dwc:kingdom="", dwc:phylum="", dwc:class="", dwc:order="", dwc:superfamily="", dwc:tribe="", dwc:subtribe="",dwc:family="", dwc:genus="", dwc:subgenus="", dwc:specificEpithet="", dwc:infraspecificEpithet="", dwc:vernacularName="" : Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="at least enough terms exist that identify that an entity exists"
example: dwc:taxonID="", dwc:scientificNameID="", dwc:acceptedNameUsageID="", dwc:parentNameUsageID="", dwc:originalNameUsageID="", dwc:taxonConceptID="", dwc:scientificName="", dwc:higherClassification="", dwc:kingdom="", dwc:phylum="", dwc:class="", dwc:order="", dwc:superfamily="", dwc:tribe="", dwc:subtribe="",dwc:family="", dwc:genus="", dwc:subgenus="", dwc:specificEpithet="", dwc:infraspecificEpithet="", dwc:vernacularName="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="All input fields are bdqval:Empty or missing"
has expected response: COMPLIANT if at least one term needed to determine the taxon of the entity exists and is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if at least one term needed to determine the taxon of the entity exists and is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_MINDEPTH_INRANGE
type: Validation
has resource type: SingleRecord
note: The Challenger Deep in the Mariana Trench is the deepest known point in Earth's oceans at 10,994 meters below sea level. We have rounded up bdqval:maximumValidDepthInMeters.
has data quality dimension: Conformance
description: Is the value of dwc:minimumDepthInMeters within the Parameter range?
has criterion: InRange
issued: 2025-03-07
references: Extreme points of Earth
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/107
preferred label: Validation dwc:minimumDepthInMeters In Range for SingleRecord

Information Element ActedUpon dwc:minimumDepthInMeters
type: ActedUpon
composed of: minimumDepthInMeters

Extreme points of Earth
type: BibliographicResource
bibliographic citation: Wikipedia (2024) Extreme points on Earth. https://en.wikipedia.org/wiki/Extreme_points_of_Earth

ValidationMethod: VALIDATION_MINDEPTH_INRANGE with Specification for: VALIDATION_MINDEPTH_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2421
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_MINDEPTH_INRANGE
type: Specification
example: dwc:minimumDepthInMeters="1": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:minimumDepthInMeters is in range"
example: dwc:minimumDepthInMeters="12000": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:minimumDepthInMeters is not in range"
has authorities defaults: bdqval:minimumValidDepthInMeters default="0",bdqval:maximumValidDepthInMeters default="11000"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters is bdqval:Empty, or the value is not interpretable as number greater than or equal to zero; COMPLIANT if the value of dwc:minimumDepthInMeters is within the range of bdqval:minimumValidDepthInMeters to bdqval:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:minimumDepthInMeters is bdqval:Empty, or the value is not interpretable as number greater than or equal to zero; COMPLIANT if the value of dwc:minimumDepthInMeters is within the range of bdqval:minimumValidDepthInMeters to bdqval:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT bdqval:minimumValidDepthInMeters default="0",bdqval:maximumValidDepthInMeters default="11000"

Default value for bdqval:minimumValidDepthInMeters:"0"
type: Argument
has argument value: 0
has parameter: minimumValidDepthInMeters

Default value for bdqval:maximumValidDepthInMeters:"11000"
type: Argument
has argument value: 11000
has parameter: maximumValidDepthInMeters

VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:minimumElevationInMeters a number less than or equal to the value of dwc:maximumElevationInMeters?
has criterion: Consistent
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/108
preferred label: Validation dwc:minimumElevationInMeters less than dwcmaximumElevationInMeters for SingleRecord

ValidationMethod: VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION with Specification for: VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2497
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: @Tasilee

Specification for: VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION
type: Specification
example: dwc:minimumElevationInMeters="0", dwc:maximumElevationInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:minimumElevationInMeters is equal to dwc: maximumElevationInMeters"
example: dwc:minimumElevationInMeters="1", dwc:maximumElevationInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:minimumElevationInMeters is greater than dwc:maximumElevationInMeters"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumlevationInMeters or dwc:minimumElevationInMeters is bdqval:Empty, or if either is not a number; COMPLIANT if the value of dwc:minimumElevationInMeters is a number less than or equal to the value of the number dwc:maximumElevationInMeters, otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumlevationInMeters or dwc:minimumElevationInMeters is bdqval:Empty, or if either is not a number; COMPLIANT if the value of dwc:minimumElevationInMeters is a number less than or equal to the value of the number dwc:maximumElevationInMeters, otherwise NOT_COMPLIANT

VALIDATION_COORDINATEUNCERTAINTY_INRANGE
type: Validation
has resource type: SingleRecord
note: The upper limit is one half the equatorial circumference of the earth.
has data quality dimension: Conformance
description: Is the value of dwc:coordinateUncertaintyInMeters a number between 1 and 20,037,509?
has criterion: InRange
issued: 2025-03-07
references: Great-circle distance
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/109
preferred label: Validation dwc:coordinateUncertaintyInMeters In Range for SingleRecord

Information Element ActedUpon dwc:coordinateUncertaintyInMeters
type: ActedUpon
composed of: coordinateUncertaintyInMeters

Great-circle distance
type: BibliographicResource
bibliographic citation: Wikipedia (2020) Great-circle distance. https://en.wikipedia.org/wiki/Great-circle_distance

ValidationMethod: VALIDATION_COORDINATEUNCERTAINTY_INRANGE with Specification for: VALIDATION_COORDINATEUNCERTAINTY_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2562
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: ALA

Specification for: VALIDATION_COORDINATEUNCERTAINTY_INRANGE
type: Specification
example: dwc:coordinateUncertaintyInMeters="1": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:coordinateUncertaintyInMeters is in range"
example: dwc:coordinateUncertaintyInMeters="-1": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:coordinateUncertaintyInMeters is out of range"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:coordinateUncertaintyInMeters is bdqval:Empty; COMPLIANT if the value of dwc:coordinateUncertaintyInMeters is interpreted as a number between 1 and 20037509 inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:coordinateUncertaintyInMeters is bdqval:Empty; COMPLIANT if the value of dwc:coordinateUncertaintyInMeters is interpreted as a number between 1 and 20037509 inclusive; otherwise NOT_COMPLIANT

VALIDATION_MAXELEVATION_INRANGE
type: Validation
has resource type: SingleRecord
note: We have rounded up the Parameter values. We are aware of sub-ice elevations in Antarctica to -3,500m and possible sampling in the atmosphere above the elevation of the top of Mt Everest should fail this Test if captured as elevation rather than as distanceAboveSurfaceInMeters. Elevations below the maximum elevation yet above the local surface will be false positives.
has data quality dimension: Conformance
description: Is the value of dwc:maximumElevationInMeters within the Parameter range?
has criterion: InRange
issued: 2025-03-07
references: List of elevation extremes by country
references: Extreme points of Antarctica
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/112
preferred label: Validation dwc:maximumElevationInMeters In Range for SingleRecord

Information Element ActedUpon dwc:maximumElevationInMeters
type: ActedUpon
composed of: maximumElevationInMeters

ValidationMethod: VALIDATION_MAXELEVATION_INRANGE with Specification for: VALIDATION_MAXELEVATION_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2622
note: TG2 Validation SPACE CODED Test Likeliness Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_MAXELEVATION_INRANGE
type: Specification
example: dwc:maximumElevationInMeters="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:maximumElevation is in is range"
example: dwc:maximumElevationInMeters="-500": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:maximumElevation is not in range, i.e. is <-430"
has authorities defaults: bdqval:minimumValidElevationInMeters default = "-430",bdqval:maximumValidElevationInMeters default = "8850"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumElevationInMeters is bdqval:Empty or the value cannot be interpreted as a number; COMPLIANT if the value of dwc:maximumElevationInMeters is within the range of bdqval:minimumValidElevationInMeters to bdqval:maximumValidElevationInMeters inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumElevationInMeters is bdqval:Empty or the value cannot be interpreted as a number; COMPLIANT if the value of dwc:maximumElevationInMeters is within the range of bdqval:minimumValidElevationInMeters to bdqval:maximumValidElevationInMeters inclusive; otherwise NOT_COMPLIANT bdqval:minimumValidElevationInMeters default = "-430",bdqval:maximumValidElevationInMeters default = "8850"

Default value for bdqval:minimumValidElevationInMeters:"-430"
type: Argument
has argument value: -430
has parameter: minimumValidElevationInMeters

Default value for bdqval:maximumValidElevationInMeters:"8850"
type: Argument
has argument value: 8850
has parameter: maximumValidElevationInMeters

AMENDMENT_OCCURRENCESTATUS_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: The recommended controlled vocabulary for this term consists of "present" and "absent", which are the only two appropriate terms for a Darwin Core Occurrence. This is reflected in the suggested dwc:occurrenceStatus vocabulary for this Test. Other values for dwc:occurrenceStatus should only arise under circumstances that do not refer to an Occurrence. The GBIF API is listed in the sourceAuthority. However, there is currently a mismatch between the lower case recommended values at https://dwc.tdwg.org/terms/#dwc:occurrenceStatus and the GBIF vocabulary at bdqval:sourceAuthority that uses an upper case first letter (https://api.gbif.org/v1/vocabularies/OccurrenceStatus/concepts), thus implementations using the GBIF API should ensure that matches on alternate terms in that vocabulary are converted to the all lower case values in the present/absent vocabulary recommended in Darwin Core. Implementations should interpret the numeric value 1 as present, and the numeric value 0 as absent.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:occurrenceStatus using the bdqval:sourceAuthority.
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/115
preferred label: Amendment dwc:occurrenceStatus Standardized for SingleRecord

AmendmentMethod: AMENDMENT_OCCURRENCESTATUS_STANDARDIZED with Specification Specification for: AMENDMENT_OCCURRENCESTATUS_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1119
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA

Specification for: AMENDMENT_OCCURRENCESTATUS_STANDARDIZED
type: Specification
example: dwc:occurrenceStatus="1": Response.status=AMENDED, Response.result=dwc:occurrenceStatus="present", Response.comment="Input field contains an interpretable value. "
example: dwc:occurrenceStatus="X": Response.status=NOT_AMENDED, Response.result=, Response.comment="Input field contains uninterpretable value "X"
has authorities defaults: bdqval:sourceAuthority default = "Regex present/absent" {["^(present|absent)$"]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:ocurrenceStatus is bdqval:Empty; AMENDED the value of dwc:occurrenceStatus if it can be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:ocurrenceStatus is bdqval:Empty; AMENDED the value of dwc:occurrenceStatus if it can be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "Regex present/absent" {["^(present|absent)$"]}

Default value for bdqval:sourceAuthority:"Regex present/absent"
type: Argument
has argument value: Regex present/absent
has parameter: sourceAuthority

VALIDATION_OCCURRENCESTATUS_STANDARD
type: Validation
has resource type: SingleRecord
note: The recommended controlled vocabulary for this term consists of "present" and "absent", which are the only two appropriate terms for a Darwin Core Occurrence. This is reflected in the dwc:occurrenceStatus vocabulary for this Test. There is currently a mismatch between the (authoritative) lower case values at https://dwc.tdwg.org/terms/#dwc:occurrenceStatus and the vocabulary at GBIF (https://api.gbif.org/v1/vocabularies/OccurrenceStatus/concepts), which capitalized the first character. This Test must return NOT_COMPLIANT if there are case differences, leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:occurrenceStatus occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/116
preferred label: Validation dwc:occurrenceStatus Standard for SingleRecord

ValidationMethod: VALIDATION_OCCURRENCESTATUS_STANDARD with Specification for: VALIDATION_OCCURRENCESTATUS_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L418
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA

Specification for: VALIDATION_OCCURRENCESTATUS_STANDARD
type: Specification
example: dwc:occurrenceStatus="present": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:occurrenceStatus matches a term in the bdqval:sourceAuthority"
example: dwc:occurrenceStatus="presence": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:occurrenceStatus does not match a term in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Regex present/absent" {["^(present|absent)$"]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:occurrenceStatus is bdqval:Empty; COMPLIANT if the value of dwc:occurrenceStatus is resolved in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:occurrenceStatus is bdqval:Empty; COMPLIANT if the value of dwc:occurrenceStatus is resolved in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "Regex present/absent" {["^(present|absent)$"]}

Default value for bdqval:sourceAuthority:"Regex present/absent"
type: Argument
has argument value: Regex present/absent
has parameter: sourceAuthority

VALIDATION_OCCURRENCESTATUS_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:occurrenceStatus?
has criterion: NotEmpty
issued: 2025-03-07
history note: https://github.com/tdwg/bdq/issues/117
preferred label: Validation dwc:occurrenceStatus Not Empty for SingleRecord

ValidationMethod: VALIDATION_OCCURRENCESTATUS_NOTEMPTY with Specification for: VALIDATION_OCCURRENCESTATUS_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L489
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: ALA

Specification for: VALIDATION_OCCURRENCESTATUS_NOTEMPTY
type: Specification
example: dwc:occurrenceStatus="?": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:occurrenceStatus is bdqval:NotEmpty"
example: dwc:occurrenceStatus="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:occurrenceStatus is bdqval:Empty"
has expected response: COMPLIANT if dwc:occurrenceStatus is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:occurrenceStatus is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_DECIMALLATITUDE_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:decimalLatitude?
has criterion: NotEmpty
issued: 2025-03-07
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/119
preferred label: Validation dwc:decimalLatitude Not Empty for SingleRecord

ValidationMethod: VALIDATION_DECIMALLATITUDE_NOTEMPTY with Specification for: VALIDATION_DECIMALLATITUDE_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2688
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_DECIMALLATITUDE_NOTEMPTY
type: Specification
example: dwc:decimalLatitude="0": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:decimalLatitude is bdqval:NotEmpty"
example: dwc:decimalLatitude="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:decimalLatitude is bdqval:Empty"
has expected response: COMPLIANT if dwc:decimalLatitude is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:decimalLatitude is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_SCIENTIFICNAMEID_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:scientificNameID?
has criterion: NotEmpty
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/120
preferred label: Validation dwc:scientificNameID Not Empty for SingleRecord

ValidationMethod: VALIDATION_SCIENTIFICNAMEID_NOTEMPTY with Specification for: VALIDATION_SCIENTIFICNAMEID_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1845
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_SCIENTIFICNAMEID_NOTEMPTY
type: Specification
example: dwc:scientificNameID="8fa58e08-08de-4ac1-b69c-1235340b7001": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificNameID is bdqval:NotEmpty"
example: dwc:scientificNameID=" ": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificNameID is bdqval:Empty"
has expected response: COMPLIANT if dwc:scientificNameID is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:scientificNameID is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_GENUS_FOUND
type: Validation
has resource type: SingleRecord
note: The purpose of this Test is to check whether the value is a name that is a result of a nomenclatural act at this rank. This excludes unpublished names, misspellings and vernacular names. It is expected that the Test will designate the source authority against which to check. The same Test might return distinct results when using distinct source authorities.
has data quality dimension: Conformance
description: Does the value of dwc:genus occur at the rank of Genus in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/122
preferred label: Validation dwc:genus Found for SingleRecord

Information Element ActedUpon dwc:genus
type: ActedUpon
composed of: genus

ValidationMethod: VALIDATION_GENUS_FOUND with Specification for: VALIDATION_GENUS_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L1999
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: iDigBio

Specification for: VALIDATION_GENUS_FOUND
type: Specification
example: dwc:genus="Egernia": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:genus has an equivalent at the rank of Genus in the Parameterized Source Authority"
example: dwc:genus="Egernea": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:genus does not have an equivalent at the rank of Genus in the bdqval:sourceAuthority. This may be fixed using fuzzy matching at the AMENDMENT stage"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:genus is bdqval:Empty; COMPLIANT if the value of dwc:genus is found as a value at the rank of genus in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:genus is bdqval:Empty; COMPLIANT if the value of dwc:genus is found as a value at the rank of genus in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_CLASSIFICATION_CONSISTENT
type: Validation
has resource type: SingleRecord
note: A fail condition may arise either from the taxon terms being internally inconsistent (not all of the information can be true at the same time), or from the vocabulary being incapable of resolving the combination of classification values. Additional Tests could be devised against a taxonomic authority to report the distinct failure conditions. This Test specifically does not consider the content of dwc:higherClassification.
has data quality dimension: Consistency
description: Is the combination of higher classification taxonomic terms consistent using bdqval:sourceAuthority?
has criterion: Consistent
issued: 2025-03-06
references: 39omei
history note: https://github.com/tdwg/bdq/issues/123
preferred label: Validation Classification Consistent for SingleRecord

Information Element ActedUpon dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus
type: ActedUpon
composed of: kingdom
composed of: phylum
composed of: class
composed of: order
composed of: superfamily
composed of: family
composed of: subfamily
composed of: tribe
composed of: subtribe
composed of: genus

ValidationMethod: VALIDATION_CLASSIFICATION_CONSISTENT with Specification for: VALIDATION_CLASSIFICATION_CONSISTENT
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L2563
note: TG2 Validation NAME CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_CLASSIFICATION_CONSISTENT
type: Specification
example: dwc:kingdom="", dwc:phylum="", dwc:class="", dwc:order="Myrtales", dwc:superfamily="", dwc:family="Myrtaceae", dwc:subfamily="", dwc:tribe="", dwc:subtribe="",dwc:genus="Punica": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="The combination of values of higher classification taxonomic terms can be unambiguously resolved in the bdqval:sourceAuthority"
example: dwc:kingdom="", dwc:phylum="Chordata", dwc:class="", dwc:order="Rhopalocera", dwc:superfamly="", dwc:family="Muricidae", dwc:subfamily="", dwc:tribe="", dwc:subtribe="", dwc:genus="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="The combination of values of higher classification taxonomic terms cannot be unambiguously resolved in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if all of the fields dwc:kingdom dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus are bdqval:Empty; COMPLIANT if the combination of values of higher classification taxonomic terms (dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus) are consistent with the lowest ranking matched element in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if all of the fields dwc:kingdom dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus are bdqval:Empty; COMPLIANT if the combination of values of higher classification taxonomic terms (dwc:kingdom, dwc:phylum, dwc:class, dwc:order, dwc:superfamily, dwc:family, dwc:subfamily, dwc:tribe, dwc:subtribe, dwc:genus) are consistent with the lowest ranking matched element in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "GBIF Backbone Taxonomy" {[https://doi.org/10.15468/39omei]} {API endpoint [https://api.gbif.org/v1/species?datasetKey=d7dddbf4-2cf0-4f39-9b2a-bb099caae36c&name=]}

Default value for bdqval:sourceAuthority:"GBIF Backbone Taxonomy"
type: Argument
has argument value: GBIF Backbone Taxonomy
has parameter: sourceAuthority

VALIDATION_DAY_INRANGE
type: Validation
has resource type: SingleRecord
note: This Test must take into account the given month and year, if present, to account for leap years. This is part of a group of similar Tests (VALIDATION_DAY_INRANGE (8d787cb5-73e2-4c39-9cd1-67c7361dc02e, #VALIDATION_STARTDAYOFYEAR_INRANGE (85803c7e-2a5a-42e1-b8d3-299a44cafc46), VALIDATION_ENDDAYOFYEAR_INRANGE9a39d88c-7eee-46df-b32a-c109f9f81fb8)).
has data quality dimension: Conformance
description: Is the value of dwc:day interpretable as a valid integer between 1 and 28 inclusive, or is it validly 29, 30 or 31 given the dwc:month and dwc:year?
has criterion: InRange
issued: 2025-03-06
references: ui
references: ISO 8601
references: datetime
history note: https://github.com/tdwg/bdq/issues/125
preferred label: Validation dwc:day In Range for SingleRecord

Information Element ActedUpon dwc:day, dwc:month, dwc:year
type: ActedUpon
composed of: day
composed of: month
composed of: year

ValidationMethod: VALIDATION_DAY_INRANGE with Specification for: VALIDATION_DAY_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L829
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_DAY_INRANGE
type: Specification
example: dwc:day="15", dwc:month="", dwc:year="": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:day is in range"
example: dwc:day="30", dwc:month="2", dwc:year="1952": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:day is not in range"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:day is bdqval:Empty, or (2) dwc:day is not interpretable as an integer, or (3) dwc:day is interpretable as an integer between 29 and 31 inclusive and dwc:month is not interpretable as an integer between 1 and 12, or (4) dwc:month is interpretable as the integer 2 and dwc:day is interpretable as the integer 29 and dwc:year is not interpretable as a valid ISO 8601 year; COMPLIANT if (1) the value of dwc:day is interpretable as an integer between 1 and 28 inclusive, or (2) dwc:day is interpretable as an integer between 29 and 30 and dwc:month is interpretable as an integer in the set (4,6,9,11), or (3) dwc:day is interpretable as an integer between 29 and 31 and dwc:month is interpretable as an integer in the set (1,3,5,7,8,10,12), or (4) dwc:day is interpretable as the integer 29 and dwc:month is interpretable as the integer 2 and dwc:year is interpretable as is a valid leap year (evenly divisible by 400 or (evenly divisible by 4 but not evenly divisible by 100)); otherwise NOT_COMPLIANT.
description: INTERNAL_PREREQUISITES_NOT_MET if (1) dwc:day is bdqval:Empty, or (2) dwc:day is not interpretable as an integer, or (3) dwc:day is interpretable as an integer between 29 and 31 inclusive and dwc:month is not interpretable as an integer between 1 and 12, or (4) dwc:month is interpretable as the integer 2 and dwc:day is interpretable as the integer 29 and dwc:year is not interpretable as a valid ISO 8601 year; COMPLIANT if (1) the value of dwc:day is interpretable as an integer between 1 and 28 inclusive, or (2) dwc:day is interpretable as an integer between 29 and 30 and dwc:month is interpretable as an integer in the set (4,6,9,11), or (3) dwc:day is interpretable as an integer between 29 and 31 and dwc:month is interpretable as an integer in the set (1,3,5,7,8,10,12), or (4) dwc:day is interpretable as the integer 29 and dwc:month is interpretable as the integer 2 and dwc:year is interpretable as is a valid leap year (evenly divisible by 400 or (evenly divisible by 4 but not evenly divisible by 100)); otherwise NOT_COMPLIANT.

VALIDATION_MONTH_STANDARD
type: Validation
has resource type: SingleRecord
has data quality dimension: Conformance
description: Is the value of dwc:month interpretable as an integer between 1 and 12 inclusive?
has criterion: Standard
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/126
preferred label: Validation dwc:month Standard for SingleRecord

Information Element ActedUpon dwc:month
type: ActedUpon
composed of: month

ValidationMethod: VALIDATION_MONTH_STANDARD with Specification for: VALIDATION_MONTH_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L690 Unit test in [DwcEventDQTest]{https://github.com/FilteredPush/event_date_qc/blob/v3.0.0/src/test/java/org/filteredpush/qc/date/DwcEventDQTest.java#L242)
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville (MONTH_INVALID/MONTH_IN_RANGE previously in spreadsheet, from ALA?)

Specification for: VALIDATION_MONTH_STANDARD
type: Specification
example: dwc:month="10": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:month is in range"
example: dwc:month="v": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:month is ambiguous as "v" or "5""
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:month is bdqval:Empty; COMPLIANT if the value of dwc:month is interpretable as an integer between 1 and 12 inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:month is bdqval:Empty; COMPLIANT if the value of dwc:month is interpretable as an integer between 1 and 12 inclusive; otherwise NOT_COMPLIANT

AMENDMENT_DAY_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: If dwc:day contains text that may be interpreted as Roman numerals, the result will be NOT_AMENDED as this is not standard. Values such as "3rd" or "12th" can be interpreted as the integers "3" and "12". Text such as "5th Friday" is ambiguous.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:day as an integer between 1 and 31 inclusive.
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/127
preferred label: Amendment dwc:day Standardized for SingleRecord

Information Element ActedUpon dwc:day
type: ActedUpon
composed of: day

AmendmentMethod: AMENDMENT_DAY_STANDARDIZED with Specification Specification for: AMENDMENT_DAY_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1621
note: TG2 Amendment TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville

Specification for: AMENDMENT_DAY_STANDARDIZED
type: Specification
example: dwc:day="23rd": Response.status=AMENDED, Response.result=dwc:day="23", Response.comment="dwc:day is interpretable as "23""
example: dwc:day="X": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:day is ambiguous, either a "X", "No data" or "10""
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:day is bdqval:Empty; AMENDED the value of dwc:day if the value is unambiguously interpreted as an integer between 1 and 31 inclusive; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:day is bdqval:Empty; AMENDED the value of dwc:day if the value is unambiguously interpreted as an integer between 1 and 31 inclusive; otherwise NOT_AMENDED

AMENDMENT_MONTH_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: Implementations should translate unambiguously interpretable names and abbreviations of months to their integer month values 1-12. Implementations should translate interpretable Roman numerals in the range I-XII in dwc:month as integer month values 1-12, as some natural science domains use roman numeral months to avoid language and day/month vs month/day order concerns. In these cases, the result will be AMENDED numeric equivalents.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:month as an integer between 1 and 12 inclusive.
issued: 2026-04-24
history note: https://github.com/tdwg/bdq/issues/128
preferred label: Amendment dwc:month Standardized for SingleRecord

AmendmentMethod: AMENDMENT_MONTH_STANDARDIZED with Specification Specification for: AMENDMENT_MONTH_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1535 with unit test at https://github.com/FilteredPush/event_date_qc/blob/f224e5a1e6db81bc6ca725f520dd06a71fcfb54e/src/test/java/org/filteredpush/qc/date/DwcEventDQTest.java#L671 Internals of recognized string values (roman numerals, month names and abbreviations in multiple languages) use a combination of event_date_qc's DateUtils.cleanMonth() (see https://github.com/FilteredPush/event_date_qc/blob/23e4139d7f0ef71736f7fc7e984cfd2d0bfea093/src/main/java/org/filteredpush/qc/date/DateUtils.java#L2111 and Joda time's month recognition)
note: TG2 Amendment TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville

Specification for: AMENDMENT_MONTH_STANDARDIZED
type: Specification
example: dwc:month="IV": Response.status=AMENDED, Response.result=dwc:month="4", Response.comment="dwc:month interpreted as roman numerals "
example: dwc:month="Ma": Response.status=NOT_AMENDED, Response.result=, Response.comment="dwc:month contains an ambiguous value"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:month is bdqval:Empty; AMENDED the value of dwc:month if it can be unambiguously interpreted as a month represented as an integer between 1 and 12 inclusive; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:month is bdqval:Empty; AMENDED the value of dwc:month if it can be unambiguously interpreted as a month represented as an integer between 1 and 12 inclusive; otherwise NOT_AMENDED

VALIDATION_STARTDAYOFYEAR_INRANGE
type: Validation
has resource type: SingleRecord
note: See Test VALIDATION_DAY_INRANGE (8d787cb5-73e2-4c39-9cd1-67c7361dc02e). This Test only asks if dwc:startDayOfYear is a valid value for the relevant year, not if it is consistent with the start day of the range specified in dwc:eventDate. In a non-leap year, the valid range is 1-365 inclusive, in a leap year 366 is also valid. This Test should be run after the series of Tests that assure that dwc:eventDate is populated, if possible (i.e., AMENDMENT_EVENTDATE_FROM_VERBATIM (6d0a0c10-5e4a-4759-b448-88932f399812), AMENDMENT_EVENTDATE_STANDARDIZED (718dfc3c-cb52-4fca-b8e2-0e722f375da7), and AMENDMENT_EVENT_DATE_FROM_YEARMONTHDAY (3892f432-ddd0-4a0a-b713-f2e2ecbd879d)).
has data quality dimension: Conformance
description: Is the value of dwc:startDayOfYear an integer between 1 and 365 inclusive, or 366 if a leap year?
has criterion: InRange
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/130
preferred label: Validation dwc:startDayOfYear In Range for SingleRecord

Information Element ActedUpon dwc:startDayOfYear
type: ActedUpon
composed of: startDayOfYear

ValidationMethod: VALIDATION_STARTDAYOFYEAR_INRANGE with Specification for: VALIDATION_STARTDAYOFYEAR_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1087
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_STARTDAYOFYEAR_INRANGE
type: Specification
example: dwc:eventDate="", dwc:startDayOfYear="15": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:startDayOfYear is in range"
example: dwc:eventDate="", dwc:startDayOfYear="0": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:startDayOfYear is not in range"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:startDayOfYear is bdqval:Empty or if the value of dwc:startDayOfYear is equal to 366 and (dwc:eventDate is bdqval:Empty or the value of dwc:eventDate cannot be interpreted to find single year or a start year in a range); COMPLIANT if the value of dwc:startDayOfYear is an integer between 1 and 365, inclusive, or if the value of dwc:startDayOfYear is 366 and the start year interpreted from dwc:eventDate is a leap year; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:startDayOfYear is bdqval:Empty or if the value of dwc:startDayOfYear is equal to 366 and (dwc:eventDate is bdqval:Empty or the value of dwc:eventDate cannot be interpreted to find single year or a start year in a range); COMPLIANT if the value of dwc:startDayOfYear is an integer between 1 and 365, inclusive, or if the value of dwc:startDayOfYear is 366 and the start year interpreted from dwc:eventDate is a leap year; otherwise NOT_COMPLIANT

VALIDATION_ENDDAYOFYEAR_INRANGE
type: Validation
has resource type: SingleRecord
note: See Test VALIDATION_DAY_INRANGE (8d787cb5-73e2-4c39-9cd1-67c7361dc02e). This Test only asks if dwc:endDayOfYear is a valid value for the relevant year, not if it is consistent with the end day of the range specified in dwc:eventDate. In a non-leap year, the valid range is 1-365 inclusive, in a leap year 366 is also valid. This Test should be run after the series of Tests that assure that dwc:eventDate is populated, if possible (i.e., AMENDMENT_EVENTDATE_FROM_VERBATIM (6d0a0c10-5e4a-4759-b448-88932f399812), AMENDMENT_EVENTDATE_STANDARDIZED (718dfc3c-cb52-4fca-b8e2-0e722f375da7), and AMENDMENT_EVENT_DATE_FROM_YEARMONTHDAY (3892f432-ddd0-4a0a-b713-f2e2ecbd879d)).
has data quality dimension: Conformance
description: Is the value of dwc:endDayOfYear an integer between 1 and 365 inclusive, or 366 if a leap year?
has criterion: InRange
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/131
preferred label: Validation dwc:endDayOfYear In Range for SingleRecord

Information Element ActedUpon dwc:endDayOfYear
type: ActedUpon
composed of: endDayOfYear

ValidationMethod: VALIDATION_ENDDAYOFYEAR_INRANGE with Specification for: VALIDATION_ENDDAYOFYEAR_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1189
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2-Gainesville

Specification for: VALIDATION_ENDDAYOFYEAR_INRANGE
type: Specification
example: dwc:eventDate="1949-01-15T12:34/1949-01-20T17:00", dwc:endDayOfYear="20": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:endDayOfYear is in range"
example: dwc:eventDate="", dwc:endDayOfYear="x": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:endDayOfYear is ambiguous, either "X" or "No data" or "10"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:endDayOfYear is bdqval:Empty or if the value of dwc:endDayOfYear is equal to 366 and (dwc:eventDate is bdqval:Empty or the value of dwc:eventDate cannot be interpreted to find a single year or an end year in a range); COMPLIANT if the value of dwc:endDayOfYear is an integer between 1 and 365 inclusive, or if the value of dwc:endDayOfYear is 366 and the end year interpreted from dwc:eventDate is a leap year; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:endDayOfYear is bdqval:Empty or if the value of dwc:endDayOfYear is equal to 366 and (dwc:eventDate is bdqval:Empty or the value of dwc:eventDate cannot be interpreted to find a single year or an end year in a range); COMPLIANT if the value of dwc:endDayOfYear is an integer between 1 and 365 inclusive, or if the value of dwc:endDayOfYear is 366 and the end year interpreted from dwc:eventDate is a leap year; otherwise NOT_COMPLIANT

AMENDMENT_EVENTDATE_FROM_YEARSTARTDAYOFYEARENDDAYOFYEAR
type: Amendment
has resource type: SingleRecord
has enhancement: FilledInFrom
note: An attempt to populate dwc:eventDate from dwc:verbatimEventDate should be made before this Test is run. While year=1999, startDayOfYear=123 could be validly represented as an ISO date as either 1999-123 or 1999-05-03, the latter of these two forms SHOULD be used, thus, do not simply concatenate dwc:year and dwc:startDayOfYear. This Test is only for cases that fall within the one year (as given in dwc:year) and hence dwc:startDayOfYear will always be less than dwc:endDayOfYear.
has data quality dimension: Completeness
description: Proposes an amendment to the value of dwc:eventDate from values in dwc:year, dwc:startDayOfYear and dwc:endDayOfYear.
issued: 2025-03-06
references: ui
references: ISO 8601
history note: https://github.com/tdwg/bdq/issues/132
preferred label: Amendment dwc:eventDate from dwc:year dwc:startDayOfYear dwc:endDayOfYear for SingleRecord

Information Element Consulted dwc:year, dwc:startDayOfYear, dwc:endDayOfYear
type: Consulted
composed of: year
composed of: startDayOfYear
composed of: endDayOfYear

AmendmentMethod: AMENDMENT_EVENTDATE_FROM_YEARSTARTDAYOFYEARENDDAYOFYEAR with Specification Specification for: AMENDMENT_EVENTDATE_FROM_YEARSTARTDAYOFYEARENDDAYOFYEAR
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L1296
note: TG2 Amendment TIME CODED Test Completeness CORE
history note: Source: TG2-Gainesville

Specification for: AMENDMENT_EVENTDATE_FROM_YEARSTARTDAYOFYEARENDDAYOFYEAR
type: Specification
example: dwc:year="1901", dwc:startDayOfYear="15", dwc:endDayOfYear="25", dwc:eventDate="": Response.status=FILLED_IN, Response.result=dwc:eventDate="1901-01-15/1901-01-25", Response.comment="dwc:eventDate was interpreted from dwc:year, dwc:startDayOfYear and dwc:endDayOfYear"
example: dwc:year="1901", dwc:startDayOfYear="25", dwc:endDayOfYear="15", dwc:eventDate="": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:startDayOfYear > dwc:endDayOfyear"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:NotEmpty or any of dwc:year, dwc:startDayOfYear, or dwc:endDayOfYear are bdqval:Empty; FILLED_IN the value of dwc:eventDate from values in dwc:year, dwc:startDayOfYear and dwc:endDayOfYear if the values in each are independently interpretable and if the value of dwc:startDayOfYear is less than the value of dwc:endDayOfYear; otherwise NOT_AMENDED
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:NotEmpty or any of dwc:year, dwc:startDayOfYear, or dwc:endDayOfYear are bdqval:Empty; FILLED_IN the value of dwc:eventDate from values in dwc:year, dwc:startDayOfYear and dwc:endDayOfYear if the values in each are independently interpretable and if the value of dwc:startDayOfYear is less than the value of dwc:endDayOfYear; otherwise NOT_AMENDED

AMENDMENT_LICENSE_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: The license at the record level might be derived from the license of the dataset from which the record is retrieved.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dcterms:license using the bdqval:sourceAuthority.
issued: 2025-03-07
references: LicenseDocument
references: licenses
history note: https://github.com/tdwg/bdq/issues/133
preferred label: Amendment dcterms:license Standardized for SingleRecord

AmendmentMethod: AMENDMENT_LICENSE_STANDARDIZED with Specification Specification for: AMENDMENT_LICENSE_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1226
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: VertNet

Specification for: AMENDMENT_LICENSE_STANDARDIZED
type: Specification
example: dcterms:license="CC0": Response.status=AMENDED, Response.result=dcterms:license="https://creativecommons.org/publicdomain/zero/1.0/legalcode", Response.comment="Input field contains interpretable value"
example: dcterms:license="X": Response.status=NOT_AMENDED, Response.result="", Response.comment="dcterms:license contains uninterpretable value "X""
has authorities defaults: bdqval:sourceAuthority default = "Creative Commons" {[https://creativecommons.org/]} {Creative Commons licenses [https://creativecommons.org/about/cclicenses/]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; AMENDED value of dcterms:license if it could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; AMENDED value of dcterms:license if it could be unambiguously interpreted as a value in the bdqval:sourceAuthority; otherwise NOT_AMENDED. bdqval:sourceAuthority default = "Creative Commons" {[https://creativecommons.org/]} {Creative Commons licenses [https://creativecommons.org/about/cclicenses/]}

Default value for bdqval:sourceAuthority:"Creative Commons"
type: Argument
has argument value: Creative Commons
has parameter: sourceAuthority

MEASURE_VALIDATIONTESTS_PREREQUISITESNOTMET
type: Measure
has resource type: SingleRecord
note: We have three individual measures for pass (MEASURE_VALIDATIONTESTS_COMPLIANT (45fb49eb-4a1b-4b49-876f-15d5034dfc73)), fail (MEASURE_VALIDATIONTESTS_NOTCOMPLIANT (453844ae-9df4-439f-8e24-c52498eca84a)), and PREREQUISITES_NOT_MET (49a94636-a562-4e6b-803c-665c80628a3d). To get the total number of Tests that were attempted, add all three measures. To get the total number of Tests that ran, add NOT_COMPLIANT (fail) and COMPLIANT (pass).
has data quality dimension: Completeness
description: The number of distinct VALIDATION Tests that have a Response.status="EXTERNAL_PREREQUISITES_NOT_MET" or "INTERNAL_PREREQUISITES_NOT_MET" for a given record.
issued: 2024-09-25
history note: https://github.com/tdwg/bdq/issues/134
preferred label: Measure Validation Tests Prerequisites Not Met for SingleRecord

MeasurementMethod: MEASURE_VALIDATIONTESTS_PREREQUISITESNOTMET with Specification Specification for: MEASURE_VALIDATIONTESTS_PREREQUISITESNOTMET
type: MeasurementMethod
note: TG2 Measure NAME SPACE TIME OTHER Test CORE
history note: Source: TG2-Gainesville

Specification for: MEASURE_VALIDATIONTESTS_PREREQUISITESNOTMET
type: Specification
example: [Response.status=RUN_HAS_RESULT, Response.result="27", Response.comment="27 VALIDATION Tests had either INTERNAL_PREREQUISITES_NOT_MET" or "EXTERNAL_PREREQUISITES_NOT_MET"]
has expected response: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were run; Report the number of Tests of output type VALIDATION that did not run because prerequisites for those Tests were not met (Result.status="INTERNAL_PREREQUISITES_NOT_MET" or "EXTERNAL_PREREQUISITES_NOT_MET")
description: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were run; Report the number of Tests of output type VALIDATION that did not run because prerequisites for those Tests were not met (Result.status="INTERNAL_PREREQUISITES_NOT_MET" or "EXTERNAL_PREREQUISITES_NOT_MET")

MEASURE_VALIDATIONTESTS_COMPLIANT
type: Measure
has resource type: SingleRecord
note: We have three individual measures for pass (MEASURE_VALIDATIONTESTS_COMPLIANT (45fb49eb-4a1b-4b49-876f-15d5034dfc73)), fail (MEASURE_VALIDATIONTESTS_NOTCOMPLIANT (453844ae-9df4-439f-8e24-c52498eca84a)), and PREREQUISITES_NOT_MET (49a94636-a562-4e6b-803c-665c80628a3d). To get the total number of Tests that were attempted, add all three measures. To get the total number of Tests that ran, add NOT_COMPLIANT (fail) and COMPLIANT (pass).
has data quality dimension: Reliability
description: Measures the number of distinct VALIDATION Tests that have a Response.status="COMPLIANT" for a given record.
issued: 2024-09-25
history note: https://github.com/tdwg/bdq/issues/135
preferred label: Measure Validation Tests Compliant for SingleRecord

MeasurementMethod: MEASURE_VALIDATIONTESTS_COMPLIANT with Specification Specification for: MEASURE_VALIDATIONTESTS_COMPLIANT
type: MeasurementMethod
note: TG2 Measure NAME SPACE OTHER Test CORE
history note: Source: TG2-Gainesville

Specification for: MEASURE_VALIDATIONTESTS_COMPLIANT
type: Specification
example: [Response.status=RUN_HAS_RESULT, Response.result="7", Response.comment="7 VALIDATION Tests had Response.status="COMPLIANT" ]
has expected response: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were attempted to be run; Report the number of Tests of output type VALIDATION run against the record that were COMPLIANT (passed)
description: INTERNAL_PREREQUISITES_NOT_MET if no Tests of type VALIDATION were attempted to be run; Report the number of Tests of output type VALIDATION run against the record that were COMPLIANT (passed)

MEASURE_EVENTDATE_DURATIONINSECONDS
type: Measure
has resource type: SingleRecord
note: The duration of a day is 86400 seconds. Implementations should treat all days as 86400 seconds, but should include leap days (but not leap seconds) in durations that encompass them. Consumers should treat assertions about event date duration as approximations, see: https://xkcd.com/2867/
has data quality dimension: Resolution
description: What is the duration of dwc:eventDate in seconds?
issued: 2025-03-07
references: ui
references: ISO 8601
history note: https://github.com/tdwg/bdq/issues/140
preferred label: Measure dwc:eventDate Duration in Seconds for SingleRecord

MeasurementMethod: MEASURE_EVENTDATE_DURATIONINSECONDS with Specification Specification for: MEASURE_EVENTDATE_DURATIONINSECONDS
type: MeasurementMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L120
note: TG2 Measure TIME CODED Test CORE
history note: Source: Alex Thompson

Specification for: MEASURE_EVENTDATE_DURATIONINSECONDS
type: Specification
example: dwc:eventDate="1880-05-08/10": Response.status=RUN_HAS_RESULT, Response.result="259200", Response.comment="dwc:eventDate duration is 3 days = 259,200 seconds"
example: dwc:eventDate="95": Response.status=INTERNAL_PREREQUISITES_NOT_MET, Response.result=NOT_REPORTED, Response.comment="dwc:eventDate does not contain a valid ISO 8601-1:2019 date"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or if the value of dwc:eventDate is not a valid ISO 8601 date; otherwise RUN_HAS_RESULT with the result being the duration (sensu ISO 8601) expressed in the dwc:eventDate, in seconds.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:eventDate is bdqval:Empty or if the value of dwc:eventDate is not a valid ISO 8601 date; otherwise RUN_HAS_RESULT with the result being the duration (sensu ISO 8601) expressed in the dwc:eventDate, in seconds.

VALIDATION_DAY_STANDARD
type: Validation
has resource type: SingleRecord
note: This is part of a group of similar Tests (VALIDATION_DAY_INRANGE (8d787cb5-73e2-4c39-9cd1-67c7361dc02e), VALIDATION_STARTDAYOFYEAR_INRANGE (85803c7e-2a5a-42e1-b8d3-299a44cafc46), VALIDATION_ENDDAYOFYEAR_INRANGE (9a39d88c-7eee-46df-b32a-c109f9f81fb8)).
has data quality dimension: Conformance
description: Is the value of dwc:day an integer between 1 and 31 inclusive?
has criterion: Standard
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/147
preferred label: Validation dwc:day Standard for SingleRecord

ValidationMethod: VALIDATION_DAY_STANDARD with Specification for: VALIDATION_DAY_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush event_date_qc Library (Morris & Lowery 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/event_date_qc/blob/v3.0.5/src/main/java/org/filteredpush/qc/date/DwCEventDQ.java#L639
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TDWG2018 DQIG Meeting; TG2-Gainesville

Specification for: VALIDATION_DAY_STANDARD
type: Specification
example: dwc:day="15": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:day is in range"
example: dwc:day="32": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:day is not in range"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:day is bdqval:Empty; COMPLIANT if the value of the field dwc:day is an integer between 1 and 31 inclusive; otherwise NOT_COMPLIANT.
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:day is bdqval:Empty; COMPLIANT if the value of the field dwc:day is an integer between 1 and 31 inclusive; otherwise NOT_COMPLIANT.

VALIDATION_TAXONRANK_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:taxonRank?
has criterion: NotEmpty
issued: 2025-03-06
references: rank.xml
history note: https://github.com/tdwg/bdq/issues/161
preferred label: Validation dwc:taxonRank Not Empty for SingleRecord

Information Element ActedUpon dwc:taxonRank
type: ActedUpon
composed of: taxonRank

rank.xml
type: BibliographicResource
bibliographic citation: GBIF (2015) Taxonomic Rank GBIF Vocabulary. https://rs.gbif.org/vocabulary/gbif/rank.xml

ValidationMethod: VALIDATION_TAXONRANK_NOTEMPTY with Specification for: VALIDATION_TAXONRANK_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L2127
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TDWG2018

Specification for: VALIDATION_TAXONRANK_NOTEMPTY
type: Specification
example: dwc:taxonRank="genus": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:taxonRank is bdqval:NotEmpty"
example: dwc:taxonRank=" ": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:taxonRank is bdqval:Empty"
has expected response: COMPLIANT if dwc:taxonRank is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:taxonRank is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_TAXONRANK_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:taxonRank occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-06
references: concepts
history note: https://github.com/tdwg/bdq/issues/162
preferred label: Validation dwc:taxonRank Standard for SingleRecord

concepts
type: BibliographicResource
bibliographic citation: GBIF Registry (2023) GBIF Vocabulary: Taxonomic Rank. https://registry.gbif.org/vocabulary/TaxonRank/concepts

ValidationMethod: VALIDATION_TAXONRANK_STANDARD with Specification for: VALIDATION_TAXONRANK_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L2161
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TDWG2018

Specification for: VALIDATION_TAXONRANK_STANDARD
type: Specification
example: dwc:taxonRank="kingdom": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:taxonRank has an equivalent in the bdqval:sourceAuthority"
example: dwc:taxonRank="sp.": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:taxonRank does not have an equivalent in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF TaxonRank Vocabulary" [https://api.gbif.org/v1/vocabularies/TaxonRank]} {"dwc:taxonRank vocabulary API" [https://api.gbif.org/v1/vocabularies/TaxonRank/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:taxonRank is bdqval:Empty; COMPLIANT if the value of dwc:taxonRank is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:taxonRank is bdqval:Empty; COMPLIANT if the value of dwc:taxonRank is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "GBIF TaxonRank Vocabulary" [https://api.gbif.org/v1/vocabularies/TaxonRank]} {"dwc:taxonRank vocabulary API" [https://api.gbif.org/v1/vocabularies/TaxonRank/concepts]}

Default value for bdqval:sourceAuthority:"GBIF TaxonRank Vocabulary"
type: Argument
has argument value: GBIF TaxonRank Vocabulary
has parameter: sourceAuthority

AMENDMENT_TAXONRANK_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: For reference, information about possible values of dwc:taxonRank can be found at https://registry.gbif.org/vocabulary/TaxonRank/concepts
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:taxonRank using the bdqval:sourceAuthority.
issued: 2025-03-06
references: concepts
history note: https://github.com/tdwg/bdq/issues/163
preferred label: Amendment dwc:taxonRank Standardized for SingleRecord

AmendmentMethod: AMENDMENT_TAXONRANK_STANDARDIZED with Specification Specification for: AMENDMENT_TAXONRANK_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L2272
note: TG2 Amendment NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TDWG2018

Specification for: AMENDMENT_TAXONRANK_STANDARDIZED
type: Specification
example: dwc:taxonRank="sp.": Response.status=AMENDED, Response.result=dwc:taxonRank="species", Response.comment="dwc:taxonRank contains an interpretable value in the bdqval:sourceAuthority"
example: dwc:taxonRank="sic.": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:taxonRank does not contain an interpretable value in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF TaxonRank Vocabulary" [https://api.gbif.org/v1/vocabularies/TaxonRank]} {"dwc:taxonRank vocabulary API" [https://api.gbif.org/v1/vocabularies/TaxonRank/concepts]}}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:taxonRank is bdqval:Empty; AMENDED the value of dwc:taxonRank if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:taxonRank is bdqval:Empty; AMENDED the value of dwc:taxonRank if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "GBIF TaxonRank Vocabulary" [https://api.gbif.org/v1/vocabularies/TaxonRank]} {"dwc:taxonRank vocabulary API" [https://api.gbif.org/v1/vocabularies/TaxonRank/concepts]}}

Default value for bdqval:sourceAuthority:"GBIF TaxonRank Vocabulary"
type: Argument
has argument value: GBIF TaxonRank Vocabulary
has parameter: sourceAuthority

VALIDATION_MAXDEPTH_INRANGE
type: Validation
has resource type: SingleRecord
note: The Challenger Deep in the Mariana Trench is the deepest known point in Earth's oceans at 10,994 meters below sea level. We have rounded up bdqval:maximumValidDepthInMeters.
has data quality dimension: Conformance
description: Is the value of dwc:maximumDepthInMeters within the Parameter range?
has criterion: InRange
issued: 2025-03-07
references: Extreme points of Earth
references: doc-gg7h-s853
history note: https://github.com/tdwg/bdq/issues/187
preferred label: Validation dwc:maximumDepthInMeters In Range for SingleRecord

Information Element ActedUpon dwc:maximumDepthInMeters
type: ActedUpon
composed of: maximumDepthInMeters

ValidationMethod: VALIDATION_MAXDEPTH_INRANGE with Specification for: VALIDATION_MAXDEPTH_INRANGE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2726
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_MAXDEPTH_INRANGE
type: Specification
example: dwc:maximumDepthInMeters="1200": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:maximumDepthInMeters is in range (<11,000)"
example: dwc:maximumDepthInMeters="99999": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:maximumDepthInMeters is not in range (>11,000)"
has authorities defaults: bdqval:minimumValidDepthInMeters default="0",bdqval:maximumValidDepthInMeters default="11000"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is bdqval: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 bdqval:minimumValidDepthInMeters to bdqval:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:maximumDepthInMeters is bdqval: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 bdqval:minimumValidDepthInMeters to bdqval:maximumValidDepthInMeters inclusive; otherwise NOT_COMPLIANT bdqval:minimumValidDepthInMeters default="0",bdqval:maximumValidDepthInMeters default="11000"

Default value for bdqval:minimumValidDepthInMeters:"0"
type: Argument
has argument value: 0
has parameter: minimumValidDepthInMeters

Default value for bdqval:maximumValidDepthInMeters:"11000"
type: Argument
has argument value: 11000
has parameter: maximumValidDepthInMeters

VALIDATION_STATEPROVINCE_FOUND
type: Validation
has resource type: SingleRecord
note: Multiple values in the dwc:stateProvince field (whether to signify on a border or in a list of possibilities) will fail this Test. This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:stateProvince occur in the bdqval:sourceAuthority?
has criterion: Found
issued: 2025-03-07
references: index.html
references: doc-gg7h-s853
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
history note: https://github.com/tdwg/bdq/issues/199
preferred label: Validation dwc:stateProvince Found for SingleRecord

Information Element ActedUpon dwc:stateProvince
type: ActedUpon
composed of: stateProvince

ValidationMethod: VALIDATION_STATEPROVINCE_FOUND with Specification for: VALIDATION_STATEPROVINCE_FOUND
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L2802
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_STATEPROVINCE_FOUND
type: Specification
example: dwc:stateProvince="Florida": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:stateProvince found in bdqval:sourceAuthority"
example: dwc:stateProvince="Taswegian": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:stateProvince not found in bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:stateProvince is bdqval:Empty; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to at least one entity representing an ISO 3166 country-like entity in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:stateProvince is bdqval:Empty; COMPLIANT if the value of dwc:stateProvince occurs as an administrative entity that is a child to at least one entity representing an ISO 3166 country-like entity in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}

Default value for bdqval:sourceAuthority:"The Getty Thesaurus of Geographic Names (TGN)"
type: Argument
has argument value: The Getty Thesaurus of Geographic Names (TGN)
has parameter: sourceAuthority

VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Validation
has resource type: SingleRecord
note: See table https://github.com/tdwg/bdq/issues/95#issuecomment-1226450014. A fail condition may arise from the content being internally inconsistent (not all of the information can be true at the same time), or from the vocabulary being incapable of uniquely resolving the combination of term values. This Test specifically does not consider the content of dwc:higherGeography. If dwc:country contains a value and dwc:stateProvince does not, this Test will return NOT_COMPLIANT. Use cases where knowledge to the level of country is adequate for the fitness of the data should not include this Test. @tucotuco: "Of #200 and #201, #201 is the strongest Test. If it passes for a record, #200 must necessarily also pass and doesn't tell you anything. If #201 fails, #200 could still pass and that would tell you that there are multiple matches on the dwc:country/dwc:stateProvince combo: It would tell you the nature of the problem. Along with #42 (dwc:country not empty), #200 would tell you whether there was an ambiguous combination of country (not empty) and dwc:stateProvince, such as would happen with Argentina/Buenos Aires. While if country is empty, then the ambiguity is purely at the dwc:stateProvince level".
has data quality dimension: Conformance
description: Is the combination of the values of the terms dwc:country, dwc:stateProvince unique in the bdqval:sourceAuthority?
has criterion: Unambiguous
issued: 2025-03-07
references: doc-gg7h-s853
references: vocabs
references: index.html
references: iso-3166-country-codes.html
references: ISO 3166-1 alpha-2
history note: https://github.com/tdwg/bdq/issues/201
preferred label: Validation dwc:country dwc:stateProvince Unambiguous for SingleRecord

Information Element ActedUpon dwc:country, dwc:stateProvince
type: ActedUpon
composed of: country
composed of: stateProvince

vocabs
type: BibliographicResource
bibliographic citation: Vertnet (2022) DwC Vocabs. https://github.com/VertNet/DwCVocabs/tree/master/vocabs

ValidationMethod: VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS with Specification for: VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L3020
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: VertNet, Kurator

Specification for: VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Specification
example: dwc:country="Argentina", dwc:stateProvince="Rio Negro": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:country and dwc:stateProvince are unambiguous"
example: dwc:country="", dwc:stateProvince="WA": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:country and dwc:stateProvince are ambiguous. Matches Western Australia, Washington State (US)"
has authorities defaults: bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are bdqval:Empty; COMPLIANT if the combination of values of dwc:country and dwc:stateProvince are unambiguously resolved to a single result with a child-parent relationship in the bdqval:sourceAuthority and the entity matching the value of dwc:country in the bdqval:sourceAuthority is an ISO 3166 country-like administrative entity in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if the terms dwc:country and dwc:stateProvince are bdqval:Empty; COMPLIANT if the combination of values of dwc:country and dwc:stateProvince are unambiguously resolved to a single result with a child-parent relationship in the bdqval:sourceAuthority and the entity matching the value of dwc:country in the bdqval:sourceAuthority is an ISO 3166 country-like administrative entity in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT bdqval:sourceAuthority default = "The Getty Thesaurus of Geographic Names (TGN)" {[https://www.getty.edu/research/tools/vocabularies/tgn/index.html]}

Default value for bdqval:sourceAuthority:"The Getty Thesaurus of Geographic Names (TGN)"
type: Argument
has argument value: The Getty Thesaurus of Geographic Names (TGN)
has parameter: sourceAuthority

VALIDATION_SCIENTIFICNAMEID_COMPLETE
type: Validation
has resource type: SingleRecord
note: If any single bdqval:sourceAuthority such as GBIF is used, a valid and complete dwc:scientificNameID based on an alternative source authority is unlikely to provide a valid match. A text or number string as a namespace indicator without a URI will be ambiguous. As an example, GBIF's backbone taxonomy dataset can be found at https://doi.org/10.15468/39omei. When referencing a GBIF taxon by GBIF's identifier for that taxon, use the the pseudo-namespace "gbif:" and the form "gbif:{integer}" as the value for dwc:scientificNameID. Note that GBIF currently uses "TaxonID" for this entity. The terms NID, NSS, and URN are all Uniform Resource Identifiers - see the Wikipedia (2024) reference.
has data quality dimension: Completeness
description: Does the value of dwc:scientificNameID contain a complete identifier?
has criterion: Complete
issued: 2025-03-06
references: 39omei
references: LSID
history note: https://github.com/tdwg/bdq/issues/212
preferred label: Validation dwc:scientificNameID Complete for SingleRecord

Complete
type: Criterion

LSID
type: BibliographicResource
bibliographic citation: Wikipedia (2024) LSID (Life Science Identifier). https://en.wikipedia.org/wiki/LSID

ValidationMethod: VALIDATION_SCIENTIFICNAMEID_COMPLETE with Specification for: VALIDATION_SCIENTIFICNAMEID_COMPLETE
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L2903
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2 December 2023

Specification for: VALIDATION_SCIENTIFICNAMEID_COMPLETE
type: Specification
example: dwc:scientificNameID="urn:lsid:zoobank.org:act:17ADF24F-027F-44F6-9543-D3D0260CE79E": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificNameID contains a URI and a namespace indicator"
example: dwc:scientificNameID="Hakea decurrens ssp. physocarpa": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificNameID does not contain a URI"
has expected response: INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:Empty; COMPLIANT if (1) dwc:scientificNameID is a validly formed LSID, or (2) dwc:scientificNameID is a validly formed URN with at least NID and NSS present, or (3) dwc:scientificNameID is in the form scope:value, or (4) dwc:scientificNameID is a validly formed URI with host and path where path consists of more than just "/"; otherwise NOT_COMPLIANT
description: INTERNAL_PREREQUISITES_NOT_MET if dwc:scientificNameID is bdqval:Empty; COMPLIANT if (1) dwc:scientificNameID is a validly formed LSID, or (2) dwc:scientificNameID is a validly formed URN with at least NID and NSS present, or (3) dwc:scientificNameID is in the form scope:value, or (4) dwc:scientificNameID is a validly formed URI with host and path where path consists of more than just "/"; otherwise NOT_COMPLIANT

VALIDATION_KINGDOM_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:kingdom?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/216
preferred label: Validation dwc:kingdom Not Empty for SingleRecord

ValidationMethod: VALIDATION_KINGDOM_NOTEMPTY with Specification for: VALIDATION_KINGDOM_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L3021
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: VALIDATION_KINGDOM_NOTEMPTY
type: Specification
example: dwc:kingdom="Fungi": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:kingdom is bdqval:NotEmpty"
example: dwc:kingdom="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:kingdom is bdqval:Empty"
has expected response: COMPLIANT if dwc:kingdom is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:kingdom is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:scientificNameAuthorship?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/244
preferred label: Validation dwc:scientificNameAuthorship Not Empty for SingleRecord

Information Element ActedUpon dwc:scientificNameAuthorship
type: ActedUpon
composed of: scientificNameAuthorship

ValidationMethod: VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY with Specification for: VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L3055
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Specification
example: dwc:scientificNameAuthorship="(Györfi, 1952)": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:scientificNameAuthorship is bdqval:NotEmpty"
example: dwc:scientificNameAuthorship="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:scientificNameAuthorship is bdqval:Empty"
has expected response: COMPLIANT if dwc:scientificNameAuthorship is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:scientificNameAuthorship is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Validation
has resource type: SingleRecord
has data quality dimension: Completeness
description: Is there a value in dwc:namePublishedInYear?
has criterion: NotEmpty
issued: 2025-03-06
history note: https://github.com/tdwg/bdq/issues/259
preferred label: Validation dwc:namePublishedInYear Not Empty for SingleRecord

Information Element ActedUpon dwc:namePublishedInYear
type: ActedUpon
composed of: namePublishedInYear

ValidationMethod: VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY with Specification for: VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush sci_name_qc Library (Morris & Dou 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/sci_name_qc/blob/v1.1.2/src/main/java/org/filteredpush/qc/sciname/DwCSciNameDQ.java#L3090
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Specification
example: dwc:namePublishedInYear="2024": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:namePublishedInYear is bdqval:NotEmpty"
example: dwc:namePublishedInYear="": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:namePublishedInYear is bdqval:Empty"
has expected response: COMPLIANT if dwc:namePublishedInYear is bdqval:NotEmpty; otherwise NOT_COMPLIANT
description: COMPLIANT if dwc:namePublishedInYear is bdqval:NotEmpty; otherwise NOT_COMPLIANT

VALIDATION_ESTABLISHMENTMEANS_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:establishmentMeans occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: em
references: biss.3.38084
history note: https://github.com/tdwg/bdq/issues/268
preferred label: Validation dwc:establishmentMeans Standard for SingleRecord

em
type: BibliographicResource
bibliographic citation: Darwin Core Maintenance Group (2021) Establishment Means Controlled Vocabulary List of Terms. Biodiversity Information Standards (TDWG). http://rs.tdwg.org/dwc/doc/em/

biss.3.38084
type: BibliographicResource
bibliographic citation: Groom et al. (2019) Improving Darwin Core for research and management of alien species. Biodiversity Information Science and Standards 3: e38084. https://doi.org/10.3897/biss.3.38084

ValidationMethod: VALIDATION_ESTABLISHMENTMEANS_STANDARD with Specification for: VALIDATION_ESTABLISHMENTMEANS_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1429
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: VALIDATION_ESTABLISHMENTMEANS_STANDARD
type: Specification
example: dwc:establishmentMeans="native": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:establishmentMeans found in the bdqval:sourceAuthority"
example: dwc:establishmentMeans="cultivated": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:establishmentMeans not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Establishment Means Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/em/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/EstablishmentMeans/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:establishmentMeans is bdqval:Empty; COMPLIANT if the value of dwc:establishmentMeans is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:establishmentMeans is bdqval:Empty; COMPLIANT if the value of dwc:establishmentMeans is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "Establishment Means Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/em/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/EstablishmentMeans/concepts]}

Default value for bdqval:sourceAuthority:"Establishment Means Controlled Vocabulary List of Terms"
type: Argument
has argument value: Establishment Means Controlled Vocabulary List of Terms
has parameter: sourceAuthority

AMENDMENT_ESTABLISHMENTMEANS_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:establishmentMeans using the bdqval:sourceAuthority.
issued: 2025-03-07
references: em
references: biss.3.38084
history note: https://github.com/tdwg/bdq/issues/269
preferred label: Amendment dwc:establishmentMeans Standardized for SingleRecord

AmendmentMethod: AMENDMENT_ESTABLISHMENTMEANS_STANDARDIZED with Specification Specification for: AMENDMENT_ESTABLISHMENTMEANS_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1502
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: AMENDMENT_ESTABLISHMENTMEANS_STANDARDIZED
type: Specification
example: dwc:establishmentMeans="vag.": Response.status=AMENDED, Response.result=dwc:establishmentMeans="vagrant", Response.comment="dwc:establishmentMeans contains an interpretable value in the bdqval:sourceAuthority"
example: dwc:establishmentMeans="cultivated": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:establishmentMeans is not an interpretable value in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Establishment Means Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/em/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/EstablishmentMeans/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:establishmentMeans is bdqval:Empty; AMENDED the value of dwc:establishmentMeans if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:establishmentMeans is bdqval:Empty; AMENDED the value of dwc:establishmentMeans if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "Establishment Means Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/em/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/EstablishmentMeans/concepts]}

Default value for bdqval:sourceAuthority:"Establishment Means Controlled Vocabulary List of Terms"
type: Argument
has argument value: Establishment Means Controlled Vocabulary List of Terms
has parameter: sourceAuthority

VALIDATION_DEGREEOFESTABLISHMENT_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:degreeOfEstablishment occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: doe
references: biss.3.38084
history note: https://github.com/tdwg/bdq/issues/275
preferred label: Validation dwc:degreeofEstablishment Standard for SingleRecord

Information Element ActedUpon dwc:degreeOfEstablishment
type: ActedUpon
composed of: degreeOfEstablishment

doe
type: BibliographicResource
bibliographic citation: Darwin Core Maintenance Group (2021) Degree of Establishment Controlled Vocabulary List of Terms. Biodiversity Information Standards (TDWG). http://dwc.tdwg.org/doe/

ValidationMethod: VALIDATION_DEGREEOFESTABLISHMENT_STANDARD with Specification for: VALIDATION_DEGREEOFESTABLISHMENT_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1694
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: VALIDATION_DEGREEOFESTABLISHMENT_STANDARD
type: Specification
example: dwc:degreeOfEstablishment="cultivated": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:degreeOfEstablishment found in the bdqval:sourceAuthority"
example: dwc:degreeOfEstablishment="grown in garden": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:degreeOfEstablishment not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Degree of Establishment Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/doe/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/DegreeOfEstablishment/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:degreeOfEstablishment is bdqval:Empty; COMPLIANT if the value of dwc:degreeOfEstablishment is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:degreeOfEstablishment is bdqval:Empty; COMPLIANT if the value of dwc:degreeOfEstablishment is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "Degree of Establishment Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/doe/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/DegreeOfEstablishment/concepts]}

Default value for bdqval:sourceAuthority:"Degree of Establishment Controlled Vocabulary List of Terms"
type: Argument
has argument value: Degree of Establishment Controlled Vocabulary List of Terms
has parameter: sourceAuthority

AMENDMENT_DEGREEOFESTABLISHMENT_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: For reference, synonyms for values of dwc:degreeOfEstablishment can be found at https://registry.gbif.org/vocabulary/DegreeOfEstablishment/concepts.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:degreeOfEstablishment using the bdqval:sourceAuthority.
issued: 2025-03-07
references: doe
references: biss.3.38084
history note: https://github.com/tdwg/bdq/issues/276
preferred label: Amendment dwc:degreeOfEstablishment Standardized for SingleRecord

AmendmentMethod: AMENDMENT_DEGREEOFESTABLISHMENT_STANDARDIZED with Specification Specification for: AMENDMENT_DEGREEOFESTABLISHMENT_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1759
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: AMENDMENT_DEGREEOFESTABLISHMENT_STANDARDIZED
type: Specification
example: dwc:degreeOfEstablishment="capt.": Response.status=AMENDED, Response.result=dwc:degreeOfEstablishment="captive", Response.comment="dwc:degreeOfEstablishment contains an interpretable value in the bdqval:sourceAuthority"
example: dwc:degreeOfEstablishment="tree": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:degreeOfEstablishment does not contain an interpretable value in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Degree of Establishment Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/doe/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/DegreeOfEstablishment/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:degreeOfEstablishment is bdqval:Empty; AMENDED the value of dwc:degreeOfEstablishment if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:degreeOfEstablishment is bdqval:Empty; AMENDED the value of dwc:degreeOfEstablishment if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "Degree of Establishment Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/doe/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/DegreeOfEstablishment/concepts]}

Default value for bdqval:sourceAuthority:"Degree of Establishment Controlled Vocabulary List of Terms"
type: Argument
has argument value: Degree of Establishment Controlled Vocabulary List of Terms
has parameter: sourceAuthority

VALIDATION_PATHWAY_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:pathway occur in the bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: pw
references: biss.3.38084
history note: https://github.com/tdwg/bdq/issues/277
preferred label: Validation dwc:pathway Standard for SingleRecord

Information Element ActedUpon dwc:pathway
type: ActedUpon
composed of: pathway

pw
type: BibliographicResource
bibliographic citation: Darwin Core Maintenance Group (2021) Pathway Controlled Vocabulary List of Terms. Biodiversity Information Standards (TDWG). https://dwc.tdwg.org/pw/

ValidationMethod: VALIDATION_PATHWAY_STANDARD with Specification for: VALIDATION_PATHWAY_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1875
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: VALIDATION_PATHWAY_STANDARD
type: Specification
example: dwc:pathway="transportStowaway": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:pathway found in the bdqval:sourceAuthority"
example: dwc:pathway="escapee": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:pathway not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Pathway Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/pw/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/Pathway/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:pathway is bdqval:Empty; COMPLIANT if the value of dwc:pathway is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:pathway is bdqval:Empty; COMPLIANT if the value of dwc:pathway is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "Pathway Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/pw/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/Pathway/concepts]}

Default value for bdqval:sourceAuthority:"Pathway Controlled Vocabulary List of Terms"
type: Argument
has argument value: Pathway Controlled Vocabulary List of Terms
has parameter: sourceAuthority

AMENDMENT_PATHWAY_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: For reference, synonyms for values of dwc:pathway can be found at https://registry.gbif.org/vocabulary/Pathway/concepts.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:pathway using the bdqval:sourceAuthority.
issued: 2025-03-07
references: pw
history note: https://github.com/tdwg/bdq/issues/278
preferred label: Amendment dwc:pathway Standardized for SingleRecord

AmendmentMethod: AMENDMENT_PATHWAY_STANDARDIZED with Specification Specification for: AMENDMENT_PATHWAY_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L1941
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: AMENDMENT_PATHWAY_STANDARDIZED
type: Specification
example: dwc:pathway="transportStowaway": Response.status=AMENDED, Response.result=dwc:pathway="transportStowaway", Response.comment="dwc:pathway found in the bdqval:sourceAuthority"
example: dwc:pathway="escapeee": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:pathway not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "Pathway Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/pw/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/Pathway/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:pathway is bdqval:Empty; AMENDED the value of dwc:pathway if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:pathway is bdqval:Empty; AMENDED the value of dwc:pathway if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "Pathway Controlled Vocabulary List of Terms" {[https://dwc.tdwg.org/pw/]} {GBIF vocabulary API [https://api.gbif.org/v1/vocabularies/Pathway/concepts]}

Default value for bdqval:sourceAuthority:"Pathway Controlled Vocabulary List of Terms"
type: Argument
has argument value: Pathway Controlled Vocabulary List of Terms
has parameter: sourceAuthority

VALIDATION_SEX_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters. For reference, a list of synonyms for dwc:sex values can be found at https://registry.gbif.org/vocabulary/Sex/concepts.
has data quality dimension: Conformance
description: Does the value of dwc:sex occur in bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: sex.xml
history note: https://github.com/tdwg/bdq/issues/283
preferred label: Validation dwc:sex Standard for SingleRecord

Information Element ActedUpon dwc:sex
type: ActedUpon
composed of: sex

sex.xml
type: BibliographicResource
bibliographic citation: GBIF (2015) Darwin Core Vocabulary: Sex GBIF Vocabulary. https://rs.gbif.org/vocabulary/gbif/sex.xml

ValidationMethod: VALIDATION_SEX_STANDARD with Specification for: VALIDATION_SEX_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L2084
note: TG2 Validation OTHER CODED Test VOCABULARY Parameterized CORE
history note: Source: VertNet

Specification for: VALIDATION_SEX_STANDARD
type: Specification
example: dwc:sex="Male": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:sex found in the bdqval:sourceAuthority"
example: dwc:sex="f": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:sex not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Sex Vocabulary" [https://api.gbif.org/v1/vocabularies/Sex]} {"dwc:sex vocabulary API" [https://api.gbif.org/v1/vocabularies/Sex/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:sex is bdqval:Empty; COMPLIANT if the value of dwc:sex is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:sex is bdqval:Empty; COMPLIANT if the value of dwc:sex is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "GBIF Sex Vocabulary" [https://api.gbif.org/v1/vocabularies/Sex]} {"dwc:sex vocabulary API" [https://api.gbif.org/v1/vocabularies/Sex/concepts]}

Default value for bdqval:sourceAuthority:"GBIF Sex Vocabulary"
type: Argument
has argument value: GBIF Sex Vocabulary
has parameter: sourceAuthority

AMENDMENT_SEX_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: For reference, a list of synonyms for dwc:sex values can be found at https://registry.gbif.org/vocabulary/Sex/concepts.
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:sex using the bdqval:sourceAuthority.
issued: 2025-03-07
references: sex.xml
history note: https://github.com/tdwg/bdq/issues/284
preferred label: Amendment dwc:sex Standardized for SingleRecord

AmendmentMethod: AMENDMENT_SEX_STANDARDIZED with Specification Specification for: AMENDMENT_SEX_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L2148
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance CORE
history note: Source: TG2

Specification for: AMENDMENT_SEX_STANDARDIZED
type: Specification
example: dwc:sex="f": Response.status=AMENDED, Response.result=dwc:sex="Female", Response.comment="dwc:sex found in the bdqval:sourceAuthority"
example: dwc:sex="x": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:sex not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF Sex Vocabulary" [https://api.gbif.org/v1/vocabularies/Sex]} {"dwc:sex vocabulary API" [https://api.gbif.org/v1/vocabularies/Sex/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:sex is bdqval:Empty; AMENDED the value of dwc:sex if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:sex is bdqval:Empty; AMENDED the value of dwc:sex if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED bdqval:sourceAuthority default = "GBIF Sex Vocabulary" [https://api.gbif.org/v1/vocabularies/Sex]} {"dwc:sex vocabulary API" [https://api.gbif.org/v1/vocabularies/Sex/concepts]}

Default value for bdqval:sourceAuthority:"GBIF Sex Vocabulary"
type: Argument
has argument value: GBIF Sex Vocabulary
has parameter: sourceAuthority

VALIDATION_TYPESTATUS_STANDARD
type: Validation
has resource type: SingleRecord
note: This Test must return NOT_COMPLIANT if there is leading or trailing whitespace or there are leading or trailing non-printing characters.
has data quality dimension: Conformance
description: Does the value of dwc:typeStatus occur in bdqval:sourceAuthority?
has criterion: Standard
issued: 2025-03-07
references: type status
history note: https://github.com/tdwg/bdq/issues/285
preferred label: Validation dwc:typeStatus Standard for SingleRecord

Information Element ActedUpon dwc:typeStatus
type: ActedUpon
composed of: typeStatus

type status
type: BibliographicResource
bibliographic citation: GBIF (2021) Darwin Core Vocabulary: Nomenclatural Type Status Vocabulary. http://rs.gbif.org/vocabulary/gbif/type_status

ValidationMethod: VALIDATION_TYPESTATUS_STANDARD with Specification for: VALIDATION_TYPESTATUS_STANDARD
type: ValidationMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L2246
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: ALA, GBIF

Specification for: VALIDATION_TYPESTATUS_STANDARD
type: Specification
example: dwc:typeStatus="Holotype": Response.status=RUN_HAS_RESULT, Response.result=COMPLIANT, Response.comment="dwc:typeStatus found in the bdqval:sourceAuthority"
example: dwc:typeStatus="cleptotype": Response.status=RUN_HAS_RESULT, Response.result=NOT_COMPLIANT, Response.comment="dwc:typeStatus not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF TypeStatus Vocabulary" {[https://api.gbif.org/v1/vocabularies/TypeStatus]} {dwc:typeStatus vocabulary API [https://api.gbif.org/v1/vocabularies/TypeStatus/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:typeStatus is bdqval:Empty; COMPLIANT if the value of the first word in each | delimited portion of dwc:typeStatus is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if dwc:typeStatus is bdqval:Empty; COMPLIANT if the value of the first word in each | delimited portion of dwc:typeStatus is in the bdqval:sourceAuthority; otherwise NOT_COMPLIANT. bdqval:sourceAuthority default = "GBIF TypeStatus Vocabulary" {[https://api.gbif.org/v1/vocabularies/TypeStatus]} {dwc:typeStatus vocabulary API [https://api.gbif.org/v1/vocabularies/TypeStatus/concepts]}

Default value for bdqval:sourceAuthority:"GBIF TypeStatus Vocabulary"
type: Argument
has argument value: GBIF TypeStatus Vocabulary
has parameter: sourceAuthority

AMENDMENT_TYPESTATUS_STANDARDIZED
type: Amendment
has resource type: SingleRecord
has enhancement: Standardized
note: Valuable for data quality needs related to voucher specimens in natural science collections. Almost all occurrence data will have no value in dwc:typeStatus. For reference, a vocabulary of synonyms can be found for dwc:typeStatus at [https://registry.gbif.org/vocabulary/TypeStatus/concepts].
has data quality dimension: Conformance
description: Proposes an amendment to the value of dwc:typeStatus using the bdqval:sourceAuthority.
issued: 2025-03-07
references: type status
history note: https://github.com/tdwg/bdq/issues/286
preferred label: Amendment dwc:typeStatus Standardized for SingleRecord

AmendmentMethod: AMENDMENT_TYPESTATUS_STANDARDIZED with Specification Specification for: AMENDMENT_TYPESTATUS_STANDARDIZED
type: AmendmentMethod
note: Example Implementations: Kurator/FilteredPush rec_occur_qc Library (Morris 2025)
note: Example Implementations Source Code: https://github.com/FilteredPush/rec_occur_qc/blob/v1.0.1/src/main/java/org/filteredpush/qc/metadata/DwCMetadataDQ.java#L2338
note: TG2 Amendment OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: AMENDMENT_TYPESTATUS_STANDARDIZED
type: Specification
example: dwc:typeStatus="Holo.": Response.status=AMENDED, Response.result=dwc:typeStatus="Holotype", Response.comment="dwc:typeStatus found in the bdqval:sourceAuthority"
example: dwc:typeStatus="x": Response.status=NOT_AMENDED, Response.result="", Response.comment="dwc:typeStatus not found in the bdqval:sourceAuthority"
has authorities defaults: bdqval:sourceAuthority default = "GBIF TypeStatus Vocabulary" {[https://api.gbif.org/v1/vocabularies/TypeStatus]} {dwc:typeStatus vocabulary API [https://api.gbif.org/v1/vocabularies/TypeStatus/concepts]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:typeStatus is bdqval:Empty; AMENDED the value of the first word in each | delimited portion of dwc:typeStatus if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL PREREQUISITES_NOT_MET if dwc:typeStatus is bdqval:Empty; AMENDED the value of the first word in each | delimited portion of dwc:typeStatus if it can be unambiguously matched to a term in the bdqval:sourceAuthority; otherwise NOT_AMENDED. bdqval:sourceAuthority default = "GBIF TypeStatus Vocabulary" {[https://api.gbif.org/v1/vocabularies/TypeStatus]} {dwc:typeStatus vocabulary API [https://api.gbif.org/v1/vocabularies/TypeStatus/concepts]}

Default value for bdqval:sourceAuthority:"GBIF TypeStatus Vocabulary"
type: Argument
has argument value: GBIF TypeStatus Vocabulary
has parameter: sourceAuthority

ISSUE_COORDINATES_CENTEROFCOUNTRY
type: Issue
has resource type: SingleRecord
note: We have increased the buffer to 5000 meters to cater for differences that may have arisen due to the difference in geodetic datums.
has data quality dimension: Conformance
description: Are the supplied geographic coordinates within a defined buffer of the center of the country?
has criterion: Likely
issued: 2025-03-07
references: biss.7.110728
history note: https://github.com/tdwg/bdq/issues/287
preferred label: Issue Coordinates Center of Country for SingleRecord

Information Element Consulted dwc:coordinateUncertaintyInMeters
type: Consulted
composed of: coordinateUncertaintyInMeters

biss.7.110728
type: BibliographicResource
bibliographic citation: Waller JT (2023) Processing Country Centroids at the Global Biodiversity Information Facility. Biodiversity Information Science and Standards 7: e110728. https://doi.org/10.3897/biss.7.110728

IssueMethod: ISSUE_COORDINATES_CENTEROFCOUNTRY with Specification Specification for: ISSUE_COORDINATES_CENTEROFCOUNTRY
type: IssueMethod
note: Example Implementations: Kurator/FilteredPush geo_ref_qc Library (Morris & Lowery 2025b)
note: Example Implementations Source Code: https://github.com/FilteredPush/geo_ref_qc/blob/v2.0.1/src/main/java/org/filteredpush/qc/georeference/DwCGeoRefDQ.java#L3632
note: TG2 Issue SPACE CODED Test Conformance Parameterized CORE
history note: Source: GBIF

Specification for: ISSUE_COORDINATES_CENTEROFCOUNTRY
type: Specification
example: dwc:decimalLatitude="-35.38804", dwc:decimalLongitude="-65.154964", dwc:countryCode="AR": Response.status=RUN_HAS_RESULT, Response.result=POTENTIAL_ISSUE, Response.comment="coordinates fall within buffered distance in the bdqval:sourceAuthority for dwc:countryCode which may mean that coordinates have been generalized"
example: dwc:decimalLatitude="-34.184199", dwc:decimalLongitude="-65.509403", dwc:countryCode="AR": Response.status=RUN_HAS_RESULT, Response.result=NOT_ISSUE, Response.comment="coordinates fall outside buffered distance in the bdqval:sourceAuthority for dwc:countryCode"
has authorities defaults: bdqval:spatialBufferInMeters default = "5000",bdqval:sourceAuthority default = "GBIF Catalogue of Country Centroides" {[https://raw.githubusercontent.com/jhnwllr/catalogue-of-centroids/master/PCLI.tsv]}
has expected response: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if any of dwc:countryCode, dwc:decimalLatitude, dwc:decimalLongitude are bdqval:Empty; POTENTIAL_ISSUE if (1) the geographic coordinates are within the distance given by bdqval:spatialBufferInMeters from the center of the supplied dwc:countryCode as represented in the bdqval:sourceAuthority (or one of the centers, if the bdqval:sourceAuthority provides more than one per country code) and (2) the dwc:coordinateUncertaintyInMeters is bdqval:Empty or less than half the square root of the area of the country; otherwise NOT_ISSUE.
description: EXTERNAL_PREREQUISITES_NOT_MET if the bdqval:sourceAuthority is not available; INTERNAL_PREREQUISITES_NOT_MET if any of dwc:countryCode, dwc:decimalLatitude, dwc:decimalLongitude are bdqval:Empty; POTENTIAL_ISSUE if (1) the geographic coordinates are within the distance given by bdqval:spatialBufferInMeters from the center of the supplied dwc:countryCode as represented in the bdqval:sourceAuthority (or one of the centers, if the bdqval:sourceAuthority provides more than one per country code) and (2) the dwc:coordinateUncertaintyInMeters is bdqval:Empty or less than half the square root of the area of the country; otherwise NOT_ISSUE. bdqval:spatialBufferInMeters default = "5000",bdqval:sourceAuthority default = "GBIF Catalogue of Country Centroides" {[https://raw.githubusercontent.com/jhnwllr/catalogue-of-centroids/master/PCLI.tsv]}

Default value for bdqval:spatialBufferInMeters:"5000"
type: Argument
has argument value: 5000
has parameter: spatialBufferInMeters

Default value for bdqval:sourceAuthority:"GBIF Catalogue of Country Centroides"
type: Argument
has argument value: GBIF Catalogue of Country Centroides
has parameter: sourceAuthority

MULTIRECORD_MEASURE_QA_COUNTRYCODE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_COUNTRYCODE_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:countryCode Standard for MultiRecord

MultiRecord
type: ResourceType

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRYCODE_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRYCODE_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

journal.pone.0178731
type: BibliographicResource
bibliographic citation: Veiga AK, Saraiva AM, Chapman AD, Morris PJ, Gendreau C, Schigel D, Robertson TJ (2017). A conceptual framework for quality assessment and management of biodiversity data. PLOS ONE 12(6): e0178731. https://doi.org/10.1371/journal.pone.0178731

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRYCODE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCODE_STANDARD
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCODE_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRYCODE_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRYCODE_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_COUNTRYCODE_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:countryCode Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_STANDARD
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_COUNTRYCODE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRYCODE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COUNTRY_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_COUNTRY_FOUND in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:country Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRY_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRY_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRY_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRY_FOUND
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRY_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRY_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRY_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_COUNTRY_FOUND in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:country Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_FOUND
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_FOUND
type: Specification
has expected response: Count the number of VALIDATION_COUNTRY_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRY_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_PHYLUM_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_PHYLUM_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:phylum Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_PHYLUM_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_PHYLUM_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_PHYLUM_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_PHYLUM_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_PHYLUM_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_PHYLUM_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_PHYLUM_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_PHYLUM_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_PHYLUM_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:phylum Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PHYLUM_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PHYLUM_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PHYLUM_FOUND
type: Specification
has expected response: Count the number of VALIDATION_PHYLUM_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_PHYLUM_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MINDEPTH_LESSTHAN_MAXDEPTH
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:minimumDepthInMeters less than dwc:maximumDepthInMeters for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MINDEPTH_LESSTHAN_MAXDEPTH with Specification Specification for: MULTIRECORD_MEASURE_QA_MINDEPTH_LESSTHAN_MAXDEPTH
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MINDEPTH_LESSTHAN_MAXDEPTH
type: Specification
has expected response: COMPLETE if every VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_LESSTHAN_MAXDEPTH
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:minimumDepthInMeters less than dwc:maximumDepthInMeters for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_LESSTHAN_MAXDEPTH with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_LESSTHAN_MAXDEPTH
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_LESSTHAN_MAXDEPTH
type: Specification
has expected response: Count the number of VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MINDEPTH_LESSTHAN_MAXDEPTH in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_FAMILY_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_FAMILY_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:family Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_FAMILY_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_FAMILY_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_FAMILY_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_FAMILY_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_FAMILY_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_FAMILY_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_FAMILY_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_FAMILY_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_FAMILY_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:family Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_FAMILY_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_FAMILY_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_FAMILY_FOUND
type: Specification
has expected response: Count the number of VALIDATION_FAMILY_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_FAMILY_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DECIMALLONGITUDE_INRANGE in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:decimalLongitude In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DECIMALLONGITUDE_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DECIMALLONGITUDE_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_DECIMALLONGITUDE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DECIMALLONGITUDE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DECIMALLONGITUDE_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:decimalLongitude In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_DECIMALLONGITUDE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DECIMALLONGITUDE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_EVENTDATE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_EVENTDATE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:eventDate Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_EVENTDATE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_EVENTDATE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_EVENTDATE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_EVENTDATE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_EVENTDATE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_EVENTDATE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:eventDate Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_EVENTDATE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_EVENTDATE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_EVENTDATE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_EVENTDATE_INRANGE in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:eventDate In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_EVENTDATE_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_EVENTDATE_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_EVENTDATE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_EVENTDATE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_EVENTDATE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_EVENTDATE_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:eventDate In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_EVENTDATE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_EVENTDATE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_LICENSE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_LICENSE_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dcterms:license Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_LICENSE_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_LICENSE_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_LICENSE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_LICENSE_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_LICENSE_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_LICENSE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_LICENSE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_LICENSE_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dcterms:license Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_LICENSE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_LICENSE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MINELEVATION_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MINELEVATION_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:minimumElevationInMeters In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MINELEVATION_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MINELEVATION_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MINELEVATION_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_MINELEVATION_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MINELEVATION_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_MINELEVATION_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MINELEVATION_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MINELEVATION_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:minimumElevationInMeters In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_MINELEVATION_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MINELEVATION_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_LOCATION_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_LOCATION_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dcterms:Location Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_LOCATION_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_LOCATION_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_LOCATION_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_LOCATION_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_LOCATION_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_LOCATION_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_LOCATION_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_LOCATION_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_LOCATION_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dcterms:Location Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LOCATION_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LOCATION_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LOCATION_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_LOCATION_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_LOCATION_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COUNTRY_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_COUNTRY_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:country Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRY_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRY_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRY_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRY_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRY_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRY_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRY_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_COUNTRY_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:country Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRY_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_COUNTRY_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRY_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_SCIENTIFICNAME_FOUND in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:scientificName Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SCIENTIFICNAME_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SCIENTIFICNAME_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_SCIENTIFICNAME_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SCIENTIFICNAME_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_SCIENTIFICNAME_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:scientificName Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_FOUND
type: Specification
has expected response: Count the number of VALIDATION_SCIENTIFICNAME_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SCIENTIFICNAME_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_OCCURRENCEID_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_OCCURRENCEID_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:occurrenceID Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_OCCURRENCEID_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_OCCURRENCEID_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_OCCURRENCEID_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCEID_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCEID_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_OCCURRENCEID_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_OCCURRENCEID_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCEID_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_OCCURRENCEID_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:occurrenceID Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCEID_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCEID_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCEID_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_OCCURRENCEID_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_OCCURRENCEID_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_YEAR_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_YEAR_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:year Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_YEAR_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_YEAR_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_YEAR_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_YEAR_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_YEAR_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_YEAR_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_YEAR_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_YEAR_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:year Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_YEAR_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_YEAR_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COORDINATESCOUNTRYCODE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Coordinates dwc:countryCode Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COORDINATESCOUNTRYCODE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_COORDINATESCOUNTRYCODE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COORDINATESCOUNTRYCODE_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESCOUNTRYCODE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Coordinates dwc:countryCode Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESCOUNTRYCODE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESCOUNTRYCODE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESCOUNTRYCODE_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COORDINATESCOUNTRYCODE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Coordinates Terrestrial Marine for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COORDINATESTERRESTRIALMARINE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Coordinates Terrestrial Marine for MultiRecord

urn:…
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: TG2
label: MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESTERRESTRIALMARINE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESTERRESTRIALMARINE_CONSISTENT

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESTERRESTRIALMARINE_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COORDINATESTERRESTRIALMARINE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COORDINATESSTATEPROVINCE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Coordinates dwc:stateProvince Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COORDINATESSTATEPROVINCE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_COORDINATESSTATEPROVINCE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COORDINATESSTATEPROVINCE_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESSTATEPROVINCE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Coordinates dwc:stateProvince Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESSTATEPROVINCE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESSTATEPROVINCE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATESSTATEPROVINCE_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COORDINATESSTATEPROVINCE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_BASISOFRECORD_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_BASISOFRECORD_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:basisOfRecord Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_BASISOFRECORD_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_BASISOFRECORD_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_BASISOFRECORD_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_BASISOFRECORD_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_BASISOFRECORD_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_BASISOFRECORD_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_BASISOFRECORD_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_BASISOFRECORD_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:basisOfRecord Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_BASISOFRECORD_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_BASISOFRECORD_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_GEODETICDATUM_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_GEODETICDATUM_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Vaildation dwc:geodeticDatum Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_GEODETICDATUM_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_GEODETICDATUM_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_GEODETICDATUM_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_GEODETICDATUM_STANDARD
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_GEODETICDATUM_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_GEODETICDATUM_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_GEODETICDATUM_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_GEODETICDATUM_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Vaildation dwc:geodeticDatum Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_STANDARD
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_GEODETICDATUM_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_GEODETICDATUM_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COUNTRYCOUNTRYCODE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:country dwc:countryCode Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRYCOUNTRYCODE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCOUNTRYCODE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCOUNTRYCODE_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCOUNTRYCODE_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:country dwc:countryCode Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCOUNTRYCODE_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCOUNTRYCODE_CONSISTENT
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Consistency ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCOUNTRYCODE_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRYCOUNTRYCODE_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_EVENTDATE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_EVENTDATE_STANDARD in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:eventDate Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_EVENTDATE_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_EVENTDATE_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_EVENTDATE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_EVENTDATE_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_EVENTDATE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_EVENTDATE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_EVENTDATE_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:eventDate Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTDATE_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_EVENTDATE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_EVENTDATE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_EVENT_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_EVENT_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:Event Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_EVENT_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_EVENT_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_EVENT_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_EVENT_CONSISTENT
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_EVENT_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_EVENT_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_EVENT_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENT_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_EVENT_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:Event Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENT_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENT_CONSISTENT
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENT_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_EVENT_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_EVENT_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DATEIDENTIFIED_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:dateIdentified Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DATEIDENTIFIED_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DATEIDENTIFIED_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_DATEIDENTIFIED_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DATEIDENTIFIED_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DATEIDENTIFIED_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:dateIdentified Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_DATEIDENTIFIED_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DATEIDENTIFIED_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_TAXON_UNAMBIGUOUS
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_TAXON_UNAMBIGUOUS in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:Taxon Unambiguous for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_TAXON_UNAMBIGUOUS.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_TAXON_UNAMBIGUOUS across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_TAXON_UNAMBIGUOUS with Specification Specification for: MULTIRECORD_MEASURE_QA_TAXON_UNAMBIGUOUS
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_TAXON_UNAMBIGUOUS
type: Specification
has expected response: COMPLETE if every VALIDATION_TAXON_UNAMBIGUOUS in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_TAXON_UNAMBIGUOUS in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_UNAMBIGUOUS
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_TAXON_UNAMBIGUOUS in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:Taxon Unambiguous for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_UNAMBIGUOUS with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_UNAMBIGUOUS
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_UNAMBIGUOUS
type: Specification
has expected response: Count the number of VALIDATION_TAXON_UNAMBIGUOUS in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_TAXON_UNAMBIGUOUS in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Likeliness
description: Measure if all VALIDATION_DATEIDENTIFIED_INRANGE in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:dateIdentified In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DATEIDENTIFIED_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DATEIDENTIFIED_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Likeliness ISO/DCMI STANDARD Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DATEIDENTIFIED_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_DATEIDENTIFIED_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DATEIDENTIFIED_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Likeliness
description: Count the number of VALIDATION_DATEIDENTIFIED_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:dateIdentified In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Likeliness ISO/DCMI STANDARD Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DATEIDENTIFIED_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_DATEIDENTIFIED_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DATEIDENTIFIED_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_CLASS_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_CLASS_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:class Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_CLASS_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_CLASS_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_CLASS_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_CLASS_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_CLASS_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_CLASS_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_CLASS_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASS_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_CLASS_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:class Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASS_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASS_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASS_FOUND
type: Specification
has expected response: Count the number of VALIDATION_CLASS_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_CLASS_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_GEODETICDATUM_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_GEODETICDATUM_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:geodeticDatum Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_GEODETICDATUM_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_GEODETICDATUM_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_GEODETICDATUM_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_GEODETICDATUM_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_GEODETICDATUM_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_GEODETICDATUM_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_GEODETICDATUM_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_GEODETICDATUM_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:geodeticDatum Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GEODETICDATUM_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_GEODETICDATUM_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_GEODETICDATUM_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DECIMALLATITUDE_INRANGE in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:decimalLatitude In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DECIMALLATITUDE_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DECIMALLATITUDE_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_DECIMALLATITUDE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DECIMALLATITUDE_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DECIMALLATITUDE_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:decimalLatitude In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_DECIMALLATITUDE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DECIMALLATITUDE_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_KINGDOM_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_KINGDOM_FOUND in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:kingdom Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_KINGDOM_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_KINGDOM_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_KINGDOM_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_KINGDOM_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_KINGDOM_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_KINGDOM_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_KINGDOM_FOUND in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_KINGDOM_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:kingdom Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_FOUND
type: Specification
has expected response: Count the number of VALIDATION_KINGDOM_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_KINGDOM_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_SCIENTIFICNAME_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:scientificName Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SCIENTIFICNAME_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SCIENTIFICNAME_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAME_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_SCIENTIFICNAME_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SCIENTIFICNAME_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_SCIENTIFICNAME_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:scientificName Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAME_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_SCIENTIFICNAME_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SCIENTIFICNAME_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_ORDER_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_ORDER_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:order Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_ORDER_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_ORDER_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_ORDER_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_ORDER_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_ORDER_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_ORDER_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_ORDER_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_ORDER_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_ORDER_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:order Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ORDER_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ORDER_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ORDER_FOUND
type: Specification
has expected response: Count the number of VALIDATION_ORDER_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_ORDER_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_YEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_YEAR_INRANGE in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:year In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_YEAR_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_YEAR_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_YEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_YEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_YEAR_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_YEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_YEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_YEAR_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:year In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_YEAR_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_YEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_YEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COORDINATES_NOTZERO
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Likeliness
description: Measure if all VALIDATION_COORDINATES_NOTZERO in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Coordinates Not Zero for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COORDINATES_NOTZERO.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COORDINATES_NOTZERO across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COORDINATES_NOTZERO with Specification Specification for: MULTIRECORD_MEASURE_QA_COORDINATES_NOTZERO
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Likeliness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COORDINATES_NOTZERO
type: Specification
has expected response: COMPLETE if every VALIDATION_COORDINATES_NOTZERO in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COORDINATES_NOTZERO in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATES_NOTZERO
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Likeliness
description: Count the number of VALIDATION_COORDINATES_NOTZERO in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Coordinates Not Zero for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATES_NOTZERO with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATES_NOTZERO
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Likeliness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATES_NOTZERO
type: Specification
has expected response: Count the number of VALIDATION_COORDINATES_NOTZERO in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COORDINATES_NOTZERO in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_EVENTTEMPORAL_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_EVENTTEMPORAL_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:Event Temporal Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_EVENTTEMPORAL_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_EVENTTEMPORAL_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_EVENTTEMPORAL_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_EVENTTEMPORAL_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_EVENTTEMPORAL_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_EVENTTEMPORAL_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_EVENTTEMPORAL_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTTEMPORAL_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_EVENTTEMPORAL_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:Event Temporal Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTTEMPORAL_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTTEMPORAL_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_EVENTTEMPORAL_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_EVENTTEMPORAL_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_EVENTTEMPORAL_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DCTYPE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DCTYPE_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dc:type Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DCTYPE_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DCTYPE_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DCTYPE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_DCTYPE_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DCTYPE_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_DCTYPE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DCTYPE_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DCTYPE_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dc:type Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance ISO/DCMI STANDARD CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_DCTYPE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DCTYPE_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_DECIMALLONGITUDE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:decimalLongitude Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DECIMALLONGITUDE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DECIMALLONGITUDE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DECIMALLONGITUDE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_DECIMALLONGITUDE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DECIMALLONGITUDE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_DECIMALLONGITUDE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:decimalLongitude Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLONGITUDE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_DECIMALLONGITUDE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DECIMALLONGITUDE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COUNTRYCODE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_COUNTRYCODE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:countryCode Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRYCODE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRYCODE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRYCODE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCODE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRYCODE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRYCODE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRYCODE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_COUNTRYCODE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:countryCode Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYCODE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_COUNTRYCODE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRYCODE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_LICENSE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_LICENSE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dcterms:license Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_LICENSE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_LICENSE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_LICENSE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_LICENSE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_LICENSE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_LICENSE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_LICENSE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_LICENSE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dcterms:license Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_LICENSE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_LICENSE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_LICENSE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_POLYNOMIAL_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_POLYNOMIAL_CONSISTENT in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Polynomial Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_POLYNOMIAL_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_POLYNOMIAL_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_POLYNOMIAL_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_POLYNOMIAL_CONSISTENT
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_POLYNOMIAL_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_POLYNOMIAL_CONSISTENT in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_POLYNOMIAL_CONSISTENT in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_POLYNOMIAL_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_POLYNOMIAL_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Polynomial Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_POLYNOMIAL_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_POLYNOMIAL_CONSISTENT
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Consistency CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_POLYNOMIAL_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_POLYNOMIAL_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_POLYNOMIAL_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DCTYPE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_DCTYPE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dc:type Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DCTYPE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DCTYPE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DCTYPE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_DCTYPE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DCTYPE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_DCTYPE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DCTYPE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_DCTYPE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dc:type Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DCTYPE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_DCTYPE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DCTYPE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_BASISOFRECORD_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_BASISOFRECORD_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:basisOfRecord Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_BASISOFRECORD_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_BASISOFRECORD_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_BASISOFRECORD_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_BASISOFRECORD_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_BASISOFRECORD_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_BASISOFRECORD_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_BASISOFRECORD_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_BASISOFRECORD_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:basisOfRecord Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_BASISOFRECORD_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_BASISOFRECORD_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_BASISOFRECORD_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_TAXON_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_TAXON_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:Taxon Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_TAXON_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_TAXON_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_TAXON_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_TAXON_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_TAXON_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_TAXON_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_TAXON_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_TAXON_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:Taxon Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXON_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_TAXON_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_TAXON_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MINDEPTH_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MINDEPTH_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:minimumDepthInMeters In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MINDEPTH_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MINDEPTH_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MINDEPTH_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_MINDEPTH_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MINDEPTH_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_MINDEPTH_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MINDEPTH_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MINDEPTH_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:minimumDepthInMeters In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINDEPTH_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_MINDEPTH_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MINDEPTH_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MINELEVATION_LESSTHAN_MAXELEVATION
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:minimumElevationInMeters less than dwcmaximumElevationInMeters for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MINELEVATION_LESSTHAN_MAXELEVATION with Specification Specification for: MULTIRECORD_MEASURE_QA_MINELEVATION_LESSTHAN_MAXELEVATION
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MINELEVATION_LESSTHAN_MAXELEVATION
type: Specification
has expected response: COMPLETE if every VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_LESSTHAN_MAXELEVATION
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:minimumElevationInMeters less than dwcmaximumElevationInMeters for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_LESSTHAN_MAXELEVATION with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_LESSTHAN_MAXELEVATION
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MINELEVATION_LESSTHAN_MAXELEVATION
type: Specification
has expected response: Count the number of VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MINELEVATION_LESSTHAN_MAXELEVATION in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COORDINATEUNCERTAINTY_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_COORDINATEUNCERTAINTY_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:coordinateUncertaintyInMeters In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COORDINATEUNCERTAINTY_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COORDINATEUNCERTAINTY_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COORDINATEUNCERTAINTY_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_COORDINATEUNCERTAINTY_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COORDINATEUNCERTAINTY_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_COORDINATEUNCERTAINTY_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COORDINATEUNCERTAINTY_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATEUNCERTAINTY_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_COORDINATEUNCERTAINTY_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:coordinateUncertaintyInMeters In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATEUNCERTAINTY_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATEUNCERTAINTY_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COORDINATEUNCERTAINTY_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_COORDINATEUNCERTAINTY_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COORDINATEUNCERTAINTY_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MAXELEVATION_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MAXELEVATION_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:maximumElevationInMeters In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MAXELEVATION_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MAXELEVATION_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MAXELEVATION_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_MAXELEVATION_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Likeliness Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MAXELEVATION_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_MAXELEVATION_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MAXELEVATION_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXELEVATION_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MAXELEVATION_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:maximumElevationInMeters In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXELEVATION_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXELEVATION_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Likeliness Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXELEVATION_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_MAXELEVATION_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MAXELEVATION_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_OCCURRENCESTATUS_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:occurrenceStatus Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_OCCURRENCESTATUS_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_OCCURRENCESTATUS_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_OCCURRENCESTATUS_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_OCCURRENCESTATUS_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_OCCURRENCESTATUS_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:occurrenceStatus Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_OCCURRENCESTATUS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_OCCURRENCESTATUS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_OCCURRENCESTATUS_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:occurrenceStatus Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_OCCURRENCESTATUS_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_OCCURRENCESTATUS_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_OCCURRENCESTATUS_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_OCCURRENCESTATUS_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_OCCURRENCESTATUS_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_OCCURRENCESTATUS_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:occurrenceStatus Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_OCCURRENCESTATUS_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_OCCURRENCESTATUS_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_OCCURRENCESTATUS_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_DECIMALLATITUDE_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:decimalLatitude Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DECIMALLATITUDE_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DECIMALLATITUDE_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DECIMALLATITUDE_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_DECIMALLATITUDE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DECIMALLATITUDE_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_DECIMALLATITUDE_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:decimalLatitude Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DECIMALLATITUDE_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_DECIMALLATITUDE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DECIMALLATITUDE_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:scientificNameID Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SCIENTIFICNAMEID_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SCIENTIFICNAMEID_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:scientificNameID Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SCIENTIFICNAMEID_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_GENUS_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_GENUS_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:genus Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_GENUS_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_GENUS_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_GENUS_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_GENUS_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_GENUS_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_GENUS_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_GENUS_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_GENUS_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_GENUS_FOUND in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:genus Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GENUS_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GENUS_FOUND
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_GENUS_FOUND
type: Specification
has expected response: Count the number of VALIDATION_GENUS_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_GENUS_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_CLASSIFICATION_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Consistency
description: Measure if all VALIDATION_CLASSIFICATION_CONSISTENT in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation Classification Consistent for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_CLASSIFICATION_CONSISTENT.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_CLASSIFICATION_CONSISTENT across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_CLASSIFICATION_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_QA_CLASSIFICATION_CONSISTENT
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_CLASSIFICATION_CONSISTENT
type: Specification
has expected response: COMPLETE if every VALIDATION_CLASSIFICATION_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_CLASSIFICATION_CONSISTENT in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASSIFICATION_CONSISTENT
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Consistency
description: Count the number of VALIDATION_CLASSIFICATION_CONSISTENT in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation Classification Consistent for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASSIFICATION_CONSISTENT with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASSIFICATION_CONSISTENT
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Consistency Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_CLASSIFICATION_CONSISTENT
type: Specification
has expected response: Count the number of VALIDATION_CLASSIFICATION_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_CLASSIFICATION_CONSISTENT in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DAY_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DAY_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:day In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DAY_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DAY_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DAY_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_DAY_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DAY_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_DAY_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DAY_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DAY_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:day In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_DAY_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DAY_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MONTH_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MONTH_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:month Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MONTH_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MONTH_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MONTH_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_MONTH_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MONTH_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_MONTH_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MONTH_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MONTH_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MONTH_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:month Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MONTH_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MONTH_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MONTH_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_MONTH_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MONTH_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_STARTDAYOFYEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_STARTDAYOFYEAR_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:startDayOfYear In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_STARTDAYOFYEAR_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_STARTDAYOFYEAR_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_STARTDAYOFYEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_STARTDAYOFYEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_STARTDAYOFYEAR_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_STARTDAYOFYEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_STARTDAYOFYEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_STARTDAYOFYEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_STARTDAYOFYEAR_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:startDayOfYear In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STARTDAYOFYEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STARTDAYOFYEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STARTDAYOFYEAR_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_STARTDAYOFYEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_STARTDAYOFYEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_ENDDAYOFYEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_ENDDAYOFYEAR_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:endDayOfYear In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_ENDDAYOFYEAR_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_ENDDAYOFYEAR_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_ENDDAYOFYEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_ENDDAYOFYEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_ENDDAYOFYEAR_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_ENDDAYOFYEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_ENDDAYOFYEAR_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_ENDDAYOFYEAR_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_ENDDAYOFYEAR_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:endDayOfYear In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ENDDAYOFYEAR_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ENDDAYOFYEAR_INRANGE
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ENDDAYOFYEAR_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_ENDDAYOFYEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_ENDDAYOFYEAR_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DAY_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DAY_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:day Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DAY_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DAY_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DAY_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_DAY_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DAY_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_DAY_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DAY_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DAY_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:day Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_STANDARD
type: MeasurementMethod
note: TG2 Validation TIME CODED Test Conformance CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DAY_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_DAY_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DAY_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_TAXONRANK_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_TAXONRANK_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:taxonRank Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_TAXONRANK_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_TAXONRANK_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_TAXONRANK_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_TAXONRANK_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_TAXONRANK_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_TAXONRANK_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_TAXONRANK_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_TAXONRANK_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:taxonRank Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_TAXONRANK_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_TAXONRANK_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_TAXONRANK_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_TAXONRANK_STANDARD in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:taxonRank Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_TAXONRANK_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_TAXONRANK_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_TAXONRANK_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_TAXONRANK_STANDARD
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_TAXONRANK_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_TAXONRANK_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_TAXONRANK_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_TAXONRANK_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:taxonRank Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_STANDARD
type: MeasurementMethod
note: TG2 Validation NAME CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TAXONRANK_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_TAXONRANK_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_TAXONRANK_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_MAXDEPTH_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_MAXDEPTH_INRANGE in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:maximumDepthInMeters In Range for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_MAXDEPTH_INRANGE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_MAXDEPTH_INRANGE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_MAXDEPTH_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_QA_MAXDEPTH_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_MAXDEPTH_INRANGE
type: Specification
has expected response: COMPLETE if every VALIDATION_MAXDEPTH_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_MAXDEPTH_INRANGE in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXDEPTH_INRANGE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_MAXDEPTH_INRANGE in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:maximumDepthInMeters In Range for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXDEPTH_INRANGE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXDEPTH_INRANGE
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_MAXDEPTH_INRANGE
type: Specification
has expected response: Count the number of VALIDATION_MAXDEPTH_INRANGE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_MAXDEPTH_INRANGE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_STATEPROVINCE_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_STATEPROVINCE_FOUND in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:stateProvince Found for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_STATEPROVINCE_FOUND.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_STATEPROVINCE_FOUND across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_STATEPROVINCE_FOUND with Specification Specification for: MULTIRECORD_MEASURE_QA_STATEPROVINCE_FOUND
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_STATEPROVINCE_FOUND
type: Specification
has expected response: COMPLETE if every VALIDATION_STATEPROVINCE_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_STATEPROVINCE_FOUND in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_STATEPROVINCE_FOUND
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_STATEPROVINCE_FOUND in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:stateProvince Found for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STATEPROVINCE_FOUND with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STATEPROVINCE_FOUND
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_STATEPROVINCE_FOUND
type: Specification
has expected response: Count the number of VALIDATION_STATEPROVINCE_FOUND in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_STATEPROVINCE_FOUND in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:country dwc:stateProvince Unambiguous for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_COUNTRYSTATEPROVINCE_UNAMBIGUOUS with Specification Specification for: MULTIRECORD_MEASURE_QA_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Specification
has expected response: COMPLETE if every VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:country dwc:stateProvince Unambiguous for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYSTATEPROVINCE_UNAMBIGUOUS with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: MeasurementMethod
note: TG2 Validation SPACE CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_COUNTRYSTATEPROVINCE_UNAMBIGUOUS
type: Specification
has expected response: Count the number of VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_COUNTRYSTATEPROVINCE_UNAMBIGUOUS in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_COMPLETE
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_SCIENTIFICNAMEID_COMPLETE in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:scientificNameID Complete for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SCIENTIFICNAMEID_COMPLETE.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SCIENTIFICNAMEID_COMPLETE across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_COMPLETE with Specification Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_COMPLETE
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEID_COMPLETE
type: Specification
has expected response: COMPLETE if every VALIDATION_SCIENTIFICNAMEID_COMPLETE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SCIENTIFICNAMEID_COMPLETE in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_COMPLETE
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_SCIENTIFICNAMEID_COMPLETE in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:scientificNameID Complete for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_COMPLETE with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_COMPLETE
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEID_COMPLETE
type: Specification
has expected response: Count the number of VALIDATION_SCIENTIFICNAMEID_COMPLETE in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SCIENTIFICNAMEID_COMPLETE in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_KINGDOM_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_KINGDOM_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:kingdom Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_KINGDOM_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_KINGDOM_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_KINGDOM_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_KINGDOM_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_KINGDOM_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_KINGDOM_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_KINGDOM_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_KINGDOM_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:kingdom Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_KINGDOM_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_KINGDOM_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_KINGDOM_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in a record set are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:scientificNameAuthorship Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:scientificNameAuthorship Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SCIENTIFICNAMEAUTHORSHIP_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Completeness
description: Measure if all VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:namePublishedInYear Not Empty for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_NAMEPUBLISHEDINYEAR_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_QA_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Specification
has expected response: COMPLETE if every VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Completeness
description: Count the number of VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in a record set that are COMPLIANT.
issued: 2025-03-06
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:namePublishedInYear Not Empty for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_NAMEPUBLISHEDINYEAR_NOTEMPTY with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: MeasurementMethod
note: TG2 Validation NAME CODED Test Completeness CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_NAMEPUBLISHEDINYEAR_NOTEMPTY
type: Specification
has expected response: Count the number of VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_NAMEPUBLISHEDINYEAR_NOTEMPTY in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_ESTABLISHMENTMEANS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_ESTABLISHMENTMEANS_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:establishmentMeans Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_ESTABLISHMENTMEANS_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_ESTABLISHMENTMEANS_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_ESTABLISHMENTMEANS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_ESTABLISHMENTMEANS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_ESTABLISHMENTMEANS_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_ESTABLISHMENTMEANS_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_ESTABLISHMENTMEANS_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_ESTABLISHMENTMEANS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_ESTABLISHMENTMEANS_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:establishmentMeans Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ESTABLISHMENTMEANS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ESTABLISHMENTMEANS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_ESTABLISHMENTMEANS_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_ESTABLISHMENTMEANS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_ESTABLISHMENTMEANS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_DEGREEOFESTABLISHMENT_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:degreeofEstablishment Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_DEGREEOFESTABLISHMENT_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_DEGREEOFESTABLISHMENT_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_DEGREEOFESTABLISHMENT_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_DEGREEOFESTABLISHMENT_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_DEGREEOFESTABLISHMENT_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_DEGREEOFESTABLISHMENT_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:degreeofEstablishment Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DEGREEOFESTABLISHMENT_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DEGREEOFESTABLISHMENT_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_DEGREEOFESTABLISHMENT_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_DEGREEOFESTABLISHMENT_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_PATHWAY_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_PATHWAY_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:pathway Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_PATHWAY_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_PATHWAY_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_PATHWAY_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_PATHWAY_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_PATHWAY_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_PATHWAY_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_PATHWAY_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_PATHWAY_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_PATHWAY_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:pathway Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PATHWAY_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PATHWAY_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_PATHWAY_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_PATHWAY_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_PATHWAY_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_SEX_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_SEX_STANDARD in a record set are COMPLIANT or INTERNAL_PREREQUISITES_NOT_MET (indicating some empty value).
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/297
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:sex Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_SEX_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_SEX_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_SEX_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_SEX_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_SEX_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_SEX_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_SEX_STANDARD in the MultiRecord has Response.result=COMPLIANT or Response.status=INTERNAL_PREREQUISITES_NOT_MET, otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_SEX_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_SEX_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:sex Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SEX_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SEX_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_SEX_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_SEX_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_SEX_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MULTIRECORD_MEASURE_QA_TYPESTATUS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Assurance, filter record set until this measure is COMPLETE.
has data quality dimension: Conformance
description: Measure if all VALIDATION_TYPESTATUS_STANDARD in a record set are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/295
preferred label: Measurement over MultiRecord for QualityAssurance of Validation dwc:typeStatus Standard for MultiRecord

Information Element ActedUpon bdqval:AggregatedTestResponseOutcomes for bdqtest:VALIDATION_TYPESTATUS_STANDARD.Response
type: ActedUpon
note: Aggregated Response outcomes produced by VALIDATION_TYPESTATUS_STANDARD across a MultiRecord.
composed of: AggregatedTestResponseOutcomes

MeasurementMethod: MULTIRECORD_MEASURE_QA_TYPESTATUS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_QA_TYPESTATUS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_QA_TYPESTATUS_STANDARD
type: Specification
has expected response: COMPLETE if every VALIDATION_TYPESTATUS_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.
description: COMPLETE if every VALIDATION_TYPESTATUS_STANDARD in the MultiRecord has Response.result=COMPLIANT; otherwise NOT_COMPLETE.

MULTIRECORD_MEASURE_COUNT_COMPLIANT_TYPESTATUS_STANDARD
type: Measure
has resource type: MultiRecord
note: For Quality Control, compare the Response.result of this measure with the total number of records to assess work needed on the record set.
has data quality dimension: Conformance
description: Count the number of VALIDATION_TYPESTATUS_STANDARD in a record set that are COMPLIANT.
issued: 2025-03-07
references: journal.pone.0178731
history note: https://github.com/tdwg/bdq/issues/296
preferred label: Measurement over MultiRecord Counting Compliance of Validation dwc:typeStatus Standard for MultiRecord

MeasurementMethod: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TYPESTATUS_STANDARD with Specification Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TYPESTATUS_STANDARD
type: MeasurementMethod
note: TG2 Validation OTHER CODED Test VOCABULARY Conformance Parameterized CORE
history note: Source: TG2

Specification for: MULTIRECORD_MEASURE_COUNT_COMPLIANT_TYPESTATUS_STANDARD
type: Specification
has expected response: Count the number of VALIDATION_TYPESTATUS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.
description: Count the number of VALIDATION_TYPESTATUS_STANDARD in the MultiRecord that have Response.result=COMPLIANT.

MeasurementPolicy: (64) measures in UseCase bdquc:Alien-Species
type: MeasurementPolicy
has use case: bdquc:Alien-Species

bdquc:Alien-Species
type: UseCase

MeasurementPolicy: (26) measures in UseCase bdquc:SDM-Trees
type: MeasurementPolicy
has use case: bdquc:SDM-Trees

bdquc:SDM-Trees
type: UseCase

MeasurementPolicy: (105) measures in UseCase bdquc:Spatial-Temporal_Patterns
type: MeasurementPolicy
has use case: bdquc:Spatial-Temporal_Patterns

bdquc:Spatial-Temporal_Patterns
type: UseCase

MeasurementPolicy: (41) measures in UseCase bdquc:Taxon-Management
type: MeasurementPolicy
has use case: bdquc:Taxon-Management

bdquc:Taxon-Management
type: UseCase

ValidationPolicy: (32) validations in UseCase bdquc:Alien-Species
type: ValidationPolicy
has use case: bdquc:Alien-Species

ValidationPolicy: (17) validations in UseCase bdquc:SDM-Trees
type: ValidationPolicy
has use case: bdquc:SDM-Trees

ValidationPolicy: (50) validations in UseCase bdquc:Spatial-Temporal_Patterns
type: ValidationPolicy
has use case: bdquc:Spatial-Temporal_Patterns

ValidationPolicy: (19) validations in UseCase bdquc:Taxon-Management
type: ValidationPolicy
has use case: bdquc:Taxon-Management

AmendmentPolicy: (10) amendments in UseCase bdquc:Alien-Species
type: AmendmentPolicy
has use case: bdquc:Alien-Species

AmendmentPolicy: (5) amendments in UseCase bdquc:SDM-Trees
type: AmendmentPolicy
has use case: bdquc:SDM-Trees

AmendmentPolicy: (22) amendments in UseCase bdquc:Spatial-Temporal_Patterns
type: AmendmentPolicy
has use case: bdquc:Spatial-Temporal_Patterns

AmendmentPolicy: (3) amendments in UseCase bdquc:Taxon-Management
type: AmendmentPolicy
has use case: bdquc:Taxon-Management

IssuePolicy: (2) issues in UseCase bdquc:Alien-Species
type: IssuePolicy
has use case: bdquc:Alien-Species

IssuePolicy: (1) issues in UseCase bdquc:SDM-Trees
type: IssuePolicy
has use case: bdquc:SDM-Trees

IssuePolicy: (3) issues in UseCase bdquc:Spatial-Temporal_Patterns
type: IssuePolicy
has use case: bdquc:Spatial-Temporal_Patterns

IssuePolicy: (1) issues in UseCase bdquc:Taxon-Management
type: IssuePolicy
has use case: bdquc:Taxon-Management