Module: Iev::SubjectAreaConcepts

Defined in:
lib/iev/subject_area_concepts.rb

Overview

Creates ManagedConcept entries for the IEV subject area hierarchy.

The hierarchy has two levels:

- Area (e.g., "102" = "Mathematics - General concepts")
- Section (e.g., "102-01" = "Sets and operations")

Linking (all at ManagedConcept#related level):

- Each area has "narrower" relations to its sections
- Each section has "broader" relation to parent area
- Each section gets "narrower" to child concepts (added by Exporter)
- Each regular IEV concept gets "broader" to its section
  (added by Exporter)

Classification (separate from hierarchy):

- Each concept's ManagedConceptData#domains includes area and
  section ConceptReferences
- Each concept's ConceptData#domain references its section URI
- Each section concept's ConceptData#domain references parent area

Constant Summary collapse

IEV_SOURCE =
"urn:iec:std:iec:60050"

Class Method Summary collapse

Class Method Details

.add_to(collection) ⇒ void

This method returns an undefined value.

Build all area and section concepts and add them to the collection.

Parameters:

  • collection (Glossarist::ManagedConceptCollection)


30
31
32
33
34
35
36
37
38
39
40
# File 'lib/iev/subject_area_concepts.rb', line 30

def add_to(collection)
  Iev.subject_areas.each do |area|
    area_mc = build_area_concept(area)
    collection.store(area_mc)

    area.sections.each do |section|
      section_mc = build_section_concept(section, area)
      collection.store(section_mc)
    end
  end
end