plazi / catologueoflife-to-rdf

0 stars 0 forks source link

Taxon name #3

Open retog opened 7 months ago

retog commented 7 months ago

Only species have a property with their name without parents and authority. Only species have a property with their name without parents and authority. Should find a description of all fields in CSV;
dwc:taxonID
dwc:parentNameUsageID
dwc:acceptedNameUsageID
dwc:originalNameUsageID
dwc:scientificNameID
dwc:datasetID
dwc:taxonomicStatus
dwc:taxonRank
dwc:scientificName
dwc:scientificNameAuthorship
col:notho
dwc:genericName
dwc:infragenericEpithet
dwc:specificEpithet
dwc:infraspecificEpithet
dwc:cultivarEpithet
dwc:nameAccordingTo
dwc:namePublishedIn
dwc:nomenclaturalCode
dwc:nomenclaturalStatus
dwc:taxonRemarks
dcterms:references

retog commented 7 months ago

https://dwc.tdwg.org/terms/

scientificName: The full scientific name, with authorship and date information if known. When forming part of a dwc:Identification, this should be the name in lowest level taxonomic rank that can be determined. This term should not contain identification qualifications, which should instead be supplied in the dwc:identificationQualifier term.

This seems to be true for species, subspecies and varietis, but not for rank genus.

nleanba commented 3 months ago

The Taxon.tsv is missing a filed containing the uninomial name for taxa above rank genus. This may be fixed by using a different export format

nleanba commented 3 months ago

The ColIDP Format has the following columns in the NameUsage.tsv file:

nleanba commented 2 months ago

It might also be possible to "hack" uninomial names:

PREFIX dwc: <http://rs.tdwg.org/dwc/terms/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

CONSTRUCT {
  ?taxon dwc:scientificName ?scientificName ;
         dwc:scientificNameAuthorship ?author ;
         dwc:rank ?rank ;
         ?rankIri ?uninomen .
} WHERE {
  BIND(<https://www.catalogueoflife.org/data/taxon/87BXZ> as ?taxon)
  ?taxon dwc:scientificName ?scientificName ;
         dwc:scientificNameAuthorship ?author ;
         dwc:rank ?rank .
  BIND(IRI(CONCAT("http://rs.tdwg.org/dwc/terms/", ?rank)) as ?rankIri)
  BIND(STRBEFORE(?scientificName, CONCAT(" ", ?author)) as ?uninomen)
}

But this seems rather fragile.

@retog opinions?