Module: Ccd::ProductInstanceTemplate

Included in:
ProductInstance
Defined in:
lib/ccd/templates/product_instance_template.rb

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/ccd/templates/product_instance_template.rb', line 2

def self.included(base)
  base.class_eval do
    extend ::Ccd::Dsl
    
    # SHALL contain exactly one [1..1] @classCode="MANU" Manufactured Product (CodeSystem: RoleClass 2.16.840.1.113883.5.110 STATIC) (CONF:7900).
    constraint 'class_code', {:cardinality=>"1..1", :value=>"MANU"}
    
    # SHALL contain exactly one [1..1] templateId (CONF:7901) such that it
    constraint 'template_id', {:cardinality=>"1..1"}
    
    # SHALL contain exactly one [1..1] @root="2.16.840.1.113883.10.20.22.4.37" (CONF:10522).
    constraint 'template_id.root', {:cardinality=>"1..1", :value=>"2.16.840.1.113883.10.20.22.4.37"}
    
    # SHALL contain at least one [1..*] id (CONF:7902).
    constraint 'id', {:cardinality=>"1..*"}
    
    # SHALL contain exactly one [1..1] playingDevice (CONF:7903).
    constraint 'playing_device', {:cardinality=>"1..1"}
    
    # SHALL contain exactly one [1..1] scopingEntity (CONF:7905).
    constraint 'scoping_entity', {:cardinality=>"1..1"}
    
    # This scopingEntity SHALL contain at least one [1..*] id (CONF:7908).
    constraint 'scoping_entity.id', {:cardinality=>"1..*"}
  end
end