TaxonNameWrapper
Source: TaxonNameWrapper.js:39
Wraps a taxon name to provide access to components of the taxon name. This is based on the TDWG TaxonName standard, as at https://github.com/tdwg/ontology/blob/master/ontology/voc/TaxonName.rdf.
Every instance of this class is expected to have some combination of the following fields:
- rdfs:label -- the verbatim taxon name
- nameComplete -- the complete uninomial, binomial or trinomial name.
- nomenclaturalCode -- the nomenclatural code under which the complete name should be interpreted.
We will also read the following fields if they are present:
- uninomial: The uninomial name of this taxon, if one is present.
- genusPart: The genus name.
- specificEpithet: The specific epithet.
- infraspecificEpithet: The infraspecific epithet.
We wrap whatever we're given, so we won't assume that these fields are actually consistent with each other. However, when one of these fields are set, we overwrite the nameComplete to ensure that they are consistent. Similarly, changing the nameComplete will overwrite the genusPart, specificEpithet and infraspecificEpithet.
Note that the TaxonName ontology recommends dc:title instead of rdfs:label; however, I like the idea of using dc:title for documents and rdfs:label for vocabulary terms, so I'm okay with using rdfs:label for the verbatim name.
Constructor
new TaxonNameWrapper(txname, defaultNomenCode): TaxonNameWrapperCreate a new taxon name wrapper around the JSON representation of a taxon name.
Static Methods
getNomenclaturalCodes()
Return a list of all supported nomenclatural code. Each entry will have the following keys:
- code: A list of short names that can be used to represent this nomenclatural code.
- label: An informal name of this nomenclatural code in English.
- title: The formal name of this nomenclatural code in English.
- iri: The IRI of this nomenclatural code.
This will be used in drawing user interfaces, so this should be in order of likelihood of use.
getNomenCodeDetails()
Returns the nomenclatural code entry for a code.
normalize(txname)
Normalize the specified taxon name.
Parameters
txname— A taxon name to be normalized.
fromVerbatimName()
Parses a verbatim taxon name into an (unwrapped) TaxonName.
Instance Fields
nomenclaturalCode
Returns the nomenclatural code of this taxon name.
nomenclaturalCodeDetails
Returns the nomenclatural code of this taxon name as a IRI.
nomenclaturalCode
Set the nomenclatural code of this taxon name.
label
Return the label of this scientific name.
label
Set the label of this scientific name.
verbatimName
Return the verbatim name of this taxon name.
nameComplete
Return the complete name (i.e. the uninomial, binomial or trinomial name without authority information). Setting this re-parses the provided name.
nameComplete
Set the complete name. To do this, we re-parse the provided name.
uninomial
Return the uninomial name if there is one.
uninomial
Set the uninomial name.
binomialName
Return the binomial name if available.
binomialName
Set the binomial name.
trinomialName
Return the trinomial name if available.
trinomialName
Set the trinomial name.
genusPart
Return the genus part of this scientific name if available.
genusPart
Set the genus part of this name.
specificEpithet
Return the specific epithet of this scientific name if available.
specificEpithet
Set the specificEpithet part of this name.
infraspecificEpithet
Return the infraspecific epithet of this scientific name if available.
infraspecificEpithet
Set the infraspecificEpithet part of this name.
asJSONLD
Return this taxon name in an JSON-LD representation.
asOWLEquivClass
Return this taxon name as an OWL equivalentClass expression.
Static Fields
TYPE_TAXON_NAME
The type associated with these taxonName objects.
UNKNOWN_CODE
The IRI for an unknown nomenclatural code (i.e. all we know is that it's a scientific name).