Rev | Line | |
---|
[89] | 1 | # This module is implemented from this UML:
|
---|
| 2 | # http://www.openehr.org/uml/release-1.0.1/Browsable/_9_0_76d0249_1109067591791_562382_3151Report.html
|
---|
| 3 | # Ticket refs #52
|
---|
[167] | 4 | module OpenEhr
|
---|
[4] | 5 | module RM
|
---|
[167] | 6 | module DataTypes
|
---|
[4] | 7 | module Basic
|
---|
[167] | 8 | module CanonicalFragment
|
---|
[4] | 9 | end
|
---|
| 10 |
|
---|
[167] | 11 | class DataValue
|
---|
| 12 | include OpenEhr::RM::Support::Definition::BasicDefinition
|
---|
[195] | 13 | def ==(other)
|
---|
| 14 | return self.value == other.value
|
---|
| 15 | end
|
---|
[4] | 16 | end
|
---|
| 17 |
|
---|
[167] | 18 | class DvBoolean < DataValue
|
---|
[4] | 19 | def initialize(value)
|
---|
[106] | 20 | self.value = value
|
---|
| 21 | end
|
---|
| 22 | def value=(value)
|
---|
| 23 | raise ArgumentError, "value must not be nil" if value.nil?
|
---|
[109] | 24 | if value == true or value =~ /TRUE/i
|
---|
[4] | 25 | @value = true
|
---|
| 26 | else
|
---|
| 27 | @value = false
|
---|
| 28 | end
|
---|
| 29 | end
|
---|
[195] | 30 |
|
---|
[4] | 31 | def value?
|
---|
| 32 | @value == true
|
---|
| 33 | end
|
---|
[167] | 34 | end # end of DvBoolean
|
---|
[4] | 35 |
|
---|
[167] | 36 | class DvState < DataValue
|
---|
[89] | 37 | attr_reader :value
|
---|
| 38 |
|
---|
| 39 | def initialize(value, is_terminal)
|
---|
| 40 | self.value=value
|
---|
| 41 | self.is_terminal=is_terminal
|
---|
[4] | 42 | end
|
---|
[89] | 43 | def value=(v)
|
---|
| 44 | raise ArgumentError, "value should not be nil" if v.nil?
|
---|
| 45 | @value = v
|
---|
| 46 | end
|
---|
[4] | 47 | def is_terminal?
|
---|
[89] | 48 | @is_terminal
|
---|
[4] | 49 | end
|
---|
[89] | 50 | def is_terminal=(s)
|
---|
| 51 | raise ArgumentError, "terminal should not be nil" if s.nil?
|
---|
| 52 | @is_terminal = s
|
---|
| 53 | end
|
---|
[167] | 54 | end # end of DvState
|
---|
[4] | 55 |
|
---|
[167] | 56 | class DvIdentifier
|
---|
[4] | 57 | attr_accessor :issuer, :assigner, :id, :type
|
---|
| 58 | def initialize(assigner, id, issuer, type)
|
---|
[106] | 59 | if assigner.nil? or assigner.empty?\
|
---|
| 60 | or id.nil? or id.empty? or issuer.nil? or issuer.empty?\
|
---|
| 61 | or type.nil? or type.empty?
|
---|
[4] | 62 | raise ArgumentError, "invalid argument"
|
---|
| 63 | end
|
---|
| 64 | @issuer = issuer
|
---|
| 65 | @assigner = assigner
|
---|
| 66 | @id = id
|
---|
| 67 | @type = type
|
---|
| 68 | end
|
---|
[167] | 69 | end #end of DvIdentifier
|
---|
[4] | 70 | end # end of Basic
|
---|
[167] | 71 | end # end of DataTypes
|
---|
[4] | 72 | end # end of RM
|
---|
| 73 | end # end of OpenEHR
|
---|
Note:
See
TracBrowser
for help on using the repository browser.