class OpenEHR::RM::Support::Identification::ArchetypeID
Attributes
concept_name[R]
rm_entity[R]
rm_name[R]
rm_originator[R]
specialisation[R]
version_id[R]
Public Class Methods
new(args = {})
click to toggle source
Calls superclass method
OpenEHR::RM::Support::Identification::ObjectID::new
# File lib/open_ehr/rm/support/identification.rb, line 58 def initialize(args = {}) if args[:value].nil? self.rm_originator = args[:rm_originator] self.rm_name = args[:rm_name] self.rm_entity = args[:rm_entity] self.concept_name = args[:concept_name] self.version_id = args[:version_id] self.specialisation = args[:specialisation] else super(args) end end
Public Instance Methods
concept_name=(concept_name)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 101 def concept_name=(concept_name) if concept_name.nil? or concept_name.empty? raise ArgumentError, 'concept_name is mandatory' end @concept_name = concept_name end
domain_concept()
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 88 def domain_concept if @specialisation.nil? return @concept_name else return @concept_name + '-' + @specialisation end end
domain_concept=(domain_concept)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 108 def domain_concept=(domain_concept) if domain_concept.nil? or domain_concept.empty? raise ArgumentError, "domain concept not valid" end if /([a-zA-Z]\w+)(-([a-zA-Z]\w))?/ =~ domain_concept self.concept_name = $1 self.specialisation = $3 else raise ArgumentError, 'invalid domain concept form' end end
qualified_rm_entity()
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 84 def qualified_rm_entity return @rm_originator + '-' + @rm_name + '-' + @rm_entity end
rm_entity=(rm_entity)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 125 def rm_entity=(rm_entity) if rm_entity.nil? or rm_entity.empty? raise ArgumentError, "rm_entity is mandatory" end @rm_entity = rm_entity end
rm_name=(rm_name)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 120 def rm_name=(rm_name) raise ArgumentError, "rm_name not valid" if rm_name.nil? or rm_name.empty? @rm_name = rm_name end
rm_originator=(rm_originator)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 132 def rm_originator=(rm_originator) if rm_originator.nil? or rm_originator.empty? raise ArgumentError, "rm_originator not valid" end @rm_originator = rm_originator end
specialisation=(specialisation)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 139 def specialisation=(specialisation) if !specialisation.nil? and specialisation.empty? raise ArgumentError, "rm_specialisation not valid" end @specialisation = specialisation end
value()
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 96 def value return self.qualified_rm_entity + '.' + self.domain_concept + '.' + @version_id end
value=(value)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 71 def value=(value) if /([a-zA-Z]\w+)-([a-zA-Z]\w+)-([a-zA-Z]\w+)\.([a-zA-Z]\w+)(-([a-zA-Z]\w+))?\.(v[1-9]\d*)/ =~ value self.rm_originator = $1 self.rm_name = $2 self.rm_entity = $3 self.concept_name = $4 self.specialisation = $6 self.version_id = $7 else raise ArgumentError, 'invalid archetype id form' end end
version_id=(version_id)
click to toggle source
# File lib/open_ehr/rm/support/identification.rb, line 146 def version_id=(version_id) raise ArgumentError, "version_id not valid" if version_id.nil? or version_id.empty? @version_id = version_id end