Class: HealthDataStandards::Import::GreenC32::ImmunizationImporter

Inherits:
SectionImporter
  • Object
show all
Includes:
Singleton
Defined in:
lib/health-data-standards/import/green_c32/immunization_importer.rb

Instance Method Summary collapse

Methods inherited from SectionImporter

#extract_address, #extract_code, #extract_description, #extract_effective_time, #extract_entry, #extract_facility, #extract_interval, #extract_name, #extract_organization, #extract_quantity, #extract_status, #extract_telecom, #extract_time, #extract_value, #generic_import, #initialize

Constructor Details

This class inherits a constructor from HealthDataStandards::Import::GreenC32::SectionImporter

Instance Method Details

#import(immunization_xml) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/health-data-standards/import/green_c32/immunization_importer.rb', line 7

def import(immunization_xml)
  immunization_xml.root.add_namespace_definition('gc32', "urn:hl7-org:greencda:c32")
  immunization_element = immunization_xml.at_xpath("./gc32:immunization")
  immunization = Immunization.new
  extract_entry(immunization_element, immunization)
  extract_time(immunization_element, immunization, "./gc32:effectiveTime")
  extract_code(immunization_element, immunization, "./gc32:refusalReason")
  series_number = extract_node_text(immunization_element.at_xpath("./gc32:seriesNumber"))
  immunization.series_number = series_number.to_i if series_number
  immunization.refusal_ind = extract_node_attribute(immunization_element, :refused, true)
  immunization
end