Class: Glossarist::Concept

Inherits:
Lutaml::Model::Serializable
  • Object
show all
Defined in:
lib/glossarist/concept.rb

Direct Known Subclasses

LocalizedConcept

Instance Method Summary collapse

Instance Method Details

#authoritative_sourceObject



68
69
70
# File 'lib/glossarist/concept.rb', line 68

def authoritative_source
  data.authoritative_source
end

#date_acceptedObject



64
65
66
# File 'lib/glossarist/concept.rb', line 64

def date_accepted
  data.date_accepted
end

#date_accepted_from_yaml(model, value) ⇒ Object



92
93
94
95
96
97
98
99
100
101
102
103
# File 'lib/glossarist/concept.rb', line 92

def date_accepted_from_yaml(model, value)
  return if model.date_accepted

  model.data.dates ||= []
  model.data.dates << ConceptDate.of_yaml(
    { "date" => value, "type" => "accepted" },
  )

  model.date_accepted = model.data.dates.find do |d|
    d.type == "accepted"
  end
end

#date_accepted_to_yaml(model, doc) ⇒ Object



86
87
88
89
90
# File 'lib/glossarist/concept.rb', line 86

def date_accepted_to_yaml(model, doc)
  if model.date_accepted
    doc["date_accepted"] = model.date_accepted.date.iso8601
  end
end

#definitionObject



35
36
37
# File 'lib/glossarist/concept.rb', line 35

def definition
  data.definition
end

#definition=(value) ⇒ Object



39
40
41
# File 'lib/glossarist/concept.rb', line 39

def definition=(value)
  data.definition = value
end

#designationsObject Also known as: terms



30
31
32
# File 'lib/glossarist/concept.rb', line 30

def designations
  data.terms
end

#examplesObject



51
52
53
# File 'lib/glossarist/concept.rb', line 51

def examples
  data.examples
end

#id_from_yaml(model, value) ⇒ Object



82
83
84
# File 'lib/glossarist/concept.rb', line 82

def id_from_yaml(model, value)
  model.id = value
end

#id_to_yaml(model, doc) ⇒ Object



80
# File 'lib/glossarist/concept.rb', line 80

def id_to_yaml(model, doc); end

#notesObject



55
56
57
# File 'lib/glossarist/concept.rb', line 55

def notes
  data.notes
end

#preferred_designationsObject Also known as: preferred_terms



59
60
61
# File 'lib/glossarist/concept.rb', line 59

def preferred_designations
  data.terms.select(&:preferred?)
end

#sourcesObject



43
44
45
# File 'lib/glossarist/concept.rb', line 43

def sources
  data.sources
end

#sources=(value) ⇒ Object



47
48
49
# File 'lib/glossarist/concept.rb', line 47

def sources=(value)
  data.sources = value
end

#uuidObject



105
106
107
108
109
110
# File 'lib/glossarist/concept.rb', line 105

def uuid
  @uuid ||= Glossarist::Utilities::UUID.uuid_v5(
    Glossarist::Utilities::UUID::OID_NAMESPACE,
    data.to_yaml,
  )
end

#uuid_from_yaml(model, value) ⇒ Object



76
77
78
# File 'lib/glossarist/concept.rb', line 76

def uuid_from_yaml(model, value)
  model.uuid = value
end

#uuid_to_yaml(model, doc) ⇒ Object



72
73
74
# File 'lib/glossarist/concept.rb', line 72

def uuid_to_yaml(model, doc)
  doc["id"] = model.uuid if model.uuid
end