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



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

def authoritative_source
  data.authoritative_source
end

#date_acceptedObject



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

def date_accepted
  data.date_accepted
end

#date_accepted_from_yaml(model, value) ⇒ Object



95
96
97
98
99
100
101
102
103
104
105
106
# File 'lib/glossarist/concept.rb', line 95

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



89
90
91
92
93
# File 'lib/glossarist/concept.rb', line 89

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

#definitionObject



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

def definition
  data.definition
end

#definition=(value) ⇒ Object



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

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

#designationsObject Also known as: terms



33
34
35
# File 'lib/glossarist/concept.rb', line 33

def designations
  data.terms
end

#examplesObject



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

def examples
  data.examples
end

#id_from_yaml(model, value) ⇒ Object



85
86
87
# File 'lib/glossarist/concept.rb', line 85

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

#id_to_yaml(model, doc) ⇒ Object



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

def id_to_yaml(model, doc); end

#notesObject



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

def notes
  data.notes
end

#preferred_designationsObject Also known as: preferred_terms



62
63
64
# File 'lib/glossarist/concept.rb', line 62

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

#sourcesObject



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

def sources
  data.sources
end

#sources=(value) ⇒ Object



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

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

#uuidObject



108
109
110
111
112
113
# File 'lib/glossarist/concept.rb', line 108

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

#uuid_from_yaml(model, value) ⇒ Object



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

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

#uuid_to_yaml(model, doc) ⇒ Object



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

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