Class: TaxonNameRelationship::Iczn::Invalidating::Homonym::Primary::Forgotten
Constant Summary
collapse
- NOMEN_URI =
'http://purl.obolibrary.org/obo/NOMEN_0000106'.freeze
Class Method Summary
collapse
Instance Method Summary
collapse
#sv_not_specific_relationship, #sv_same_original_genus, #sv_specific_relationship, valid_object_ranks, valid_subject_ranks
disjoint_object_classes, #object_status_connector_to_subject, #subject_properties, #subject_status_connector_to_object, #sv_fix_add_synonym_for_homonym, #sv_fix_not_specific_relationship, #sv_missing_nomen_novum, #sv_missing_replacement_name, #sv_not_specific_relationship, #sv_specific_relationship, #sv_validate_total_suppression
assignable, disjoint_object_classes, disjoint_subject_classes, gbif_status_of_subject, #object_status_connector_to_subject, #similar_homonym_string, #subject_properties, #subject_status_connector_to_object, #sv_fix_not_specific_relationship, #sv_not_specific_relationship
disjoint_object_classes, disjoint_subject_classes, valid_object_ranks, valid_subject_ranks
Class Method Details
.assignment_method ⇒ Object
22
23
24
25
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 22
def self.assignment_method
:iczn_set_as_forgotten_homonym_of
end
|
.disjoint_taxon_name_relationships ⇒ Object
.inverse_assignment_method ⇒ Object
27
28
29
30
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 27
def self.inverse_assignment_method
:iczn_forgotten_homonym
end
|
.nomenclatural_priority ⇒ Object
32
33
34
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 32
def self.nomenclatural_priority
:reverse
end
|
Instance Method Details
#object_status ⇒ Object
14
15
16
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 14
def object_status
'protected primary homonym'
end
|
#subject_status ⇒ Object
18
19
20
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 18
def subject_status
'forgotten primary homonym'
end
|
#sv_forgotten_homonym ⇒ Object
36
37
38
39
40
41
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 36
def sv_forgotten_homonym
s = subject_taxon_name
if s.year_of_publication && s.year_of_publication > 1899
soft_validations.add(:type, "#{s.cached_html_name_and_author_year} was not described before 1900. It should not be treated as forgotten name.")
end
end
|
#sv_synonym_relationship ⇒ Object
51
52
53
54
55
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 51
def sv_synonym_relationship
unless self.source
soft_validations.add(:base, 'The original publication is not selected')
end
end
|
#sv_validate_priority ⇒ Object
43
44
45
46
47
48
49
|
# File 'app/models/taxon_name_relationship/iczn/invalidating/homonym/primary/forgotten.rb', line 43
def sv_validate_priority
date1 = self.subject_taxon_name.cached_nomenclature_date
date2 = self.object_taxon_name.cached_nomenclature_date
if !!date1 && !!date2 && date1 > date2 && subject_invalid_statuses.empty?
soft_validations.add(:type, "#{self.subject_status.capitalize} #{self.subject_taxon_name.cached_html_name_and_author_year} should not be younger than #{self.object_taxon_name.cached_html_name_and_author_year}")
end
end
|