Class: TaxonNameRelationship::Iczn::Invalidating

Inherits:
TaxonNameRelationship::Iczn show all
Defined in:
app/models/taxon_name_relationship/iczn/invalidating.rb

Direct Known Subclasses

Homonym, Synonym, Usage

Defined Under Namespace

Classes: Homonym, Synonym, Usage

Class Method Summary collapse

Methods inherited from TaxonNameRelationship::Iczn

disjoint_object_classes, valid_object_ranks, valid_subject_ranks

Methods inherited from TaxonNameRelationship

#aliases, disjoint_object_classes, #is_combination?, #object_properties, required_taxon_name_relationships, #subject_properties, #type_class, #type_class=, #type_name, valid_object_ranks, valid_subject_ranks

Methods included from SoftValidation

#clear_soft_validations, #fix_soft_validations, #soft_fixed?, #soft_valid?, #soft_validate, #soft_validated?, #soft_validations

Methods included from Housekeeping

#has_polymorphic_relationship?

Class Method Details

.assignableObject



21
22
23
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 21

def self.assignable
  true
end

.assignment_methodObject

as.



34
35
36
37
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 34

def self.assignment_method
  # bus.set_as_iczn_invalid_of(aus)
  :iczn_set_as_invalid_of
end

.disjoint_subject_classesObject



8
9
10
11
12
13
14
15
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 8

def self.disjoint_subject_classes
  self.parent.disjoint_subject_classes +
      self.collect_descendants_to_s(TaxonNameClassification::Iczn::Available::Valid) +
      self.collect_to_s(TaxonNameClassification::Iczn::Available,
          TaxonNameClassification::Iczn::Available::OfficialIndexOfAvailableNames,
          TaxonNameClassification::Iczn::Available::OfficialListOfAvailableNames,
          TaxonNameClassification::Iczn::Available::OfficialListOfWorksApprovedAsAvailable)
end

.disjoint_taxon_name_relationshipsObject



3
4
5
6
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 3

def self.disjoint_taxon_name_relationships
  self.parent.disjoint_taxon_name_relationships +
      self.collect_descendants_and_itself_to_s(TaxonNameRelationship::Iczn::Validating)
end

.inverse_assignment_methodObject



39
40
41
42
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 39

def self.inverse_assignment_method
  # aus.iczn_invalid = bus   ## Equal to synonym in broad sense
  :iczn_invalid
end

.nomenclatural_priorityObject



17
18
19
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 17

def self.nomenclatural_priority
  :direct
end

.object_relationship_nameObject



29
30
31
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 29

def self.object_relationship_name
  'invalid'
end

.subject_relationship_nameObject



25
26
27
# File 'app/models/taxon_name_relationship/iczn/invalidating.rb', line 25

def self.subject_relationship_name
  'valid'
end