Rev | Line | |
---|
[168] | 1 | module OpenEHR
|
---|
[4] | 2 | module RM
|
---|
[168] | 3 | module Data_Types
|
---|
| 4 | module Time_Specification
|
---|
| 5 | class DV_Time_Specification < OpenEHR::RM::Data_Types::Basic::Data_Value
|
---|
[4] | 6 | def initialize(value)
|
---|
| 7 | @value = value
|
---|
| 8 | end
|
---|
| 9 | def calender_alignment
|
---|
| 10 | raise NotImlementedError, "calender_alignment must be implemented"
|
---|
| 11 | end
|
---|
| 12 | def event_alignment
|
---|
| 13 | raise NotImlementedError, "event_alignment must be implemented"
|
---|
| 14 | end
|
---|
| 15 | def institution_specified
|
---|
| 16 | raise NotImlementedError, "institution_specified must be implemented"
|
---|
| 17 | end
|
---|
| 18 | end
|
---|
| 19 |
|
---|
[168] | 20 | class DV_General_Time_Specification < DV_Time_Specification
|
---|
[4] | 21 | attr_reader :value
|
---|
| 22 | def initialize(value)
|
---|
| 23 | value_valid(value)
|
---|
| 24 | super(value)
|
---|
| 25 | end
|
---|
| 26 | def value=(value)
|
---|
| 27 | value_valid(value)
|
---|
| 28 | @value = value
|
---|
| 29 | end
|
---|
| 30 | private
|
---|
| 31 | def value_valid(value)
|
---|
[5] | 32 | raise ArgumentError, "value is not valied" if !value.formalism.is_equal?('HL7:GTS')
|
---|
[4] | 33 | end
|
---|
| 34 | end
|
---|
[5] | 35 |
|
---|
[168] | 36 | class DV_Periodic_Time_Specification < DV_Time_Specification
|
---|
[5] | 37 | attr_reader :value
|
---|
| 38 | def initialize(value)
|
---|
| 39 | value_valid(value)
|
---|
| 40 | super(value)
|
---|
| 41 | end
|
---|
| 42 | def calender_alignment
|
---|
| 43 | end
|
---|
| 44 | def event_alignment
|
---|
| 45 | end
|
---|
| 46 | def institution_specified?
|
---|
| 47 | end
|
---|
| 48 | def period
|
---|
| 49 | end
|
---|
| 50 | private
|
---|
| 51 | def value_valid(value)
|
---|
| 52 | if !value.formalism.is_equal('HL7:PIVL') && value.formalism.is_equal('HL7:EIVL')
|
---|
| 53 | raise ArgumentError, "value is not valid"
|
---|
| 54 | end
|
---|
| 55 | end
|
---|
| 56 | end
|
---|
[4] | 57 | end
|
---|
| 58 | end # of Data_Type
|
---|
| 59 | end # of RM
|
---|
| 60 | end # of OpenEHR
|
---|
Note:
See
TracBrowser
for help on using the repository browser.