Decomposes each name into genus, specific epithet, infraspecific rank and
epithet, authorship, hybrid status, and any open-nomenclature qualifier,
without matching against a backbone. Where taxify() cleans a name and then
resolves it, parse_name() returns the cleaning step itself – the parts of
the name – for callers who need the decomposition rather than a match (the
role rgbif::name_parse() or gnparser fill). The same cleaning pipeline the
matcher uses drives the parse, so a name breaks apart the way it matches.
Value
A data.frame with one row per input name and columns:
- input_name
The original name as supplied.
- genus
The genus (first token), or a single-letter initial for an abbreviated genus (
"Q. robur").NAfor an unresolvable hybrid formula.- specific_epithet
The specific epithet, or
NAfor a bare genus.- infrasp_rank
The infraspecific rank marker (
"subsp.","var.","f.", ...) when the name has one, elseNA.- infrasp_epithet
The infraspecific epithet, else
NA.- authorship
The authorship the name carries (trailing form, e.g.
"(L.) H.Karst."), orNA.- qualifier
Any open-nomenclature / uncertainty qualifier (
"cf.","aff.","sp.","agg.","s.l.", ...), canonicalized, orNA. Infraspecific rank markers are reported ininfrasp_rank, not here.- is_hybrid
Logical. Was a hybrid marker detected?
- hybrid_type
"nothogenus","nothospecies","formula", orNA.- rank
"genus","species","infraspecies","hybrid_formula", orNAfor an empty input.- canonical
The cleaned name used for matching (genus plus epithets, qualifiers and authorship removed, hybrid sign dropped).
NAfor a hybrid formula, which is not a single taxon.
See also
taxify() to match a name; parse_name() exposes the same internal
cleaning pipeline the matcher runs.
Examples
parse_name(c("Quercus robur L.",
"Poa annua var. annua",
"Q. robur",
"Pinus cf. sylvestris",
"Salix alba x Salix fragilis"))