Class: NomenclaturalRank::Icvcn::Family

Inherits:
NomenclaturalRank::Icvcn show all
Defined in:
app/models/nomenclatural_rank/icvcn/family.rb

Constant Summary

Constants inherited from NomenclaturalRank::Icvcn

KINGDOM

Class Method Summary collapse

Methods inherited from NomenclaturalRank::Icvcn

group_base

Methods inherited from NomenclaturalRank

bottom_rank, collect_descendants_to_s, collect_to_s, nomenclatural_code, nomenclatural_code_class, ordered_ranks, parent, rank_name, top_rank, typical_use, valid_parents

Class Method Details

.abbreviationObject



32
33
34
# File 'app/models/nomenclatural_rank/icvcn/family.rb', line 32

def self.abbreviation
  'fam.'
end

.parent_rankObject

realm “‑viria” subrealm “‑vira” kingdom “‑virae” subkingdom “‑virites” phylum “‑viricota” subphylum “‑viricotina” class “‑viricetes” subclass “‑viricetidae” order “‑virales” suborder “‑virineae” family “‑viridae” subfamily “‑virinae” genus “‑virus” subgenus “‑virus”



18
19
20
# File 'app/models/nomenclatural_rank/icvcn/family.rb', line 18

def self.parent_rank
  NomenclaturalRank::Icvcn::Order
end

.valid_name_endingObject



28
29
30
# File 'app/models/nomenclatural_rank/icvcn/family.rb', line 28

def self.valid_name_ending
  'idae'
end

.validate_name_format(taxon_name) ⇒ Object



22
23
24
25
26
# File 'app/models/nomenclatural_rank/icvcn/family.rb', line 22

def self.validate_name_format(taxon_name)
  return true if taxon_name.name.length < 2
  taxon_name.errors.add(:name, 'name must be capitalized') unless  !taxon_name.name.blank? && taxon_name.name == taxon_name.name.capitalize
  taxon_name.errors.add(:name, 'name must end in -viridae or -viroidae or -satellitidae') if not(taxon_name.name =~ /.*(viridae|viroidae|satellitidae)\Z/)
end