fhir_models 1.6.7 → 1.6.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 506fa4fb63ad86b1aca3f2b52e7dba9b7c6935ee
4
- data.tar.gz: 4840f7d47b541b4016adce7146e270c03278611e
3
+ metadata.gz: 004b194430eba649a774e56b415ae738778c17bc
4
+ data.tar.gz: e6639436f629c5402f429bd6897032cc806032a2
5
5
  SHA512:
6
- metadata.gz: 0846007edf62c23e546e921cb12ee03f16e0b1a0369b41c5d1701a7cea2fe266cfcee71dcb57b4e2e03e98b44a614cab1001c32a4915168cb371143dd36134ac
7
- data.tar.gz: 8690d6dfeace0293338389bcdeb2b006efe1d6795c0a8b0b3e8e896014af08d83f4f61b92504077aa89fcfdb7bb9f85924d8a58ba8ff436b8dfbece266fc6387
6
+ metadata.gz: 4025df8d9835fc5234e3969173637f664db73c6c59faa7c621b55d9b0b2fb5b7a7cca840390f83ab4e3f694fd45ab356bf1b69453cc1402f246622dfbc004d20
7
+ data.tar.gz: 7b60d8f6e1c2cb4b68057484668fc522ea9b37114791429039bf0fc734458775e733bad9a2d67949bb8ff515114b91d6b18edea7e3f7f9ce80c745b5801df454
@@ -0,0 +1,191 @@
1
+ {
2
+ "resourceType": "CapabilityStatement",
3
+ "id": "example",
4
+ "text": {
5
+ "status": "generated",
6
+ "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n \n <p>The EHR Server supports the following transactions for the resource Person: read, vread, \n update, history, search(name,gender), create and updates.</p>\n \n <p>The EHR System supports the following message: admin-notify::Person.</p>\n \n <p>The EHR Application has a \n <a href=\"http://fhir.hl7.org/base/Profilebc054d23-75e1-4dc6-aca5-838b6b1ac81d/_history/b5fdd9fc-b021-4ea1-911a-721a60663796\">general document profile</a>.\n </p>\n \n </div>"
7
+ },
8
+ "url": "68D043B5-9ECF-4559-A57A-396E0D452311",
9
+ "version": "20130510",
10
+ "name": "ACME EHR CapabilityStatement statement",
11
+ "status": "draft",
12
+ "experimental": true,
13
+ "date": "2012-01-04",
14
+ "publisher": "ACME Corporation",
15
+ "contact": [
16
+ {
17
+ "name": "System Administrator",
18
+ "telecom": [
19
+ {
20
+ "system": "email",
21
+ "value": "wile@acme.org"
22
+ }
23
+ ]
24
+ }
25
+ ],
26
+ "description": "This is the FHIR CapabilityStatement statement for the main EHR at ACME for the private interface - it does not describe the public interface",
27
+ "purpose": "Main EHR CapabilityStatement statement, published for contracting and operational support",
28
+ "copyright": "Copyright © Acme Healthcare and GoodCorp EHR Systems",
29
+ "kind": "instance",
30
+ "software": {
31
+ "name": "EHR",
32
+ "version": "0.00.020.2134",
33
+ "releaseDate": "2012-01-04"
34
+ },
35
+ "implementation": {
36
+ "description": "main EHR at ACME",
37
+ "url": "http://10.2.3.4/fhir"
38
+ },
39
+ "fhirVersion": "1.0.0",
40
+ "acceptUnknown": "both",
41
+ "format": [
42
+ "xml",
43
+ "json"
44
+ ],
45
+ "rest": [
46
+ {
47
+ "mode": "server",
48
+ "documentation": "Main FHIR endpoint for acem health",
49
+ "security": {
50
+ "cors": true,
51
+ "service": [
52
+ {
53
+ "coding": [
54
+ {
55
+ "system": "http://hl7.org/fhir/restful-security-service",
56
+ "code": "SMART-on-FHIR"
57
+ }
58
+ ]
59
+ }
60
+ ],
61
+ "description": "See Smart on FHIR documentation",
62
+ "certificate": [
63
+ {
64
+ "type": "application/jwt",
65
+ "blob": "IHRoaXMgYmxvYiBpcyBub3QgdmFsaWQ="
66
+ }
67
+ ]
68
+ },
69
+ "resource": [
70
+ {
71
+ "type": "Patient",
72
+ "profile": {
73
+ "reference": "http://fhir.hl7.org/base/Profile7896271d-57f6-4231-89dc-dcc91eab2416"
74
+ },
75
+ "interaction": [
76
+ {
77
+ "code": "read"
78
+ },
79
+ {
80
+ "code": "vread",
81
+ "documentation": "Only supported for patient records since 12-Dec 2012"
82
+ },
83
+ {
84
+ "code": "update"
85
+ },
86
+ {
87
+ "code": "history-instance"
88
+ },
89
+ {
90
+ "code": "create"
91
+ },
92
+ {
93
+ "code": "history-type"
94
+ }
95
+ ],
96
+ "versioning": "versioned-update",
97
+ "readHistory": true,
98
+ "updateCreate": false,
99
+ "conditionalCreate": true,
100
+ "conditionalUpdate": false,
101
+ "conditionalDelete": "not-supported",
102
+ "searchInclude": [
103
+ "Organization"
104
+ ],
105
+ "searchRevInclude": [
106
+ "Person"
107
+ ],
108
+ "searchParam": [
109
+ {
110
+ "name": "identifier",
111
+ "definition": "http://hl7.org/fhir/SearchParameter/Patient-identifier",
112
+ "type": "token",
113
+ "documentation": "Only supports search by institution MRN",
114
+ "modifier": [
115
+ "missing"
116
+ ]
117
+ },
118
+ {
119
+ "name": "careprovider",
120
+ "definition": "http://hl7.org/fhir/SearchParameter/Patient-careprovider",
121
+ "type": "reference",
122
+ "target": [
123
+ "Organization"
124
+ ],
125
+ "modifier": [
126
+ "missing"
127
+ ],
128
+ "chain": [
129
+ "name",
130
+ "identifier"
131
+ ]
132
+ }
133
+ ]
134
+ }
135
+ ],
136
+ "interaction": [
137
+ {
138
+ "code": "transaction"
139
+ },
140
+ {
141
+ "code": "history-system"
142
+ }
143
+ ],
144
+ "compartment": [
145
+ "http://hl7.org/fhir/compartment/Patient"
146
+ ]
147
+ }
148
+ ],
149
+ "messaging": [
150
+ {
151
+ "endpoint": [
152
+ {
153
+ "protocol": {
154
+ "system": "http://hl7.org/fhir/message-transport",
155
+ "code": "mllp"
156
+ },
157
+ "address": "mllp:10.1.1.10:9234"
158
+ }
159
+ ],
160
+ "reliableCache": 30,
161
+ "documentation": "ADT A08 equivalent for external system notifications",
162
+ "event": [
163
+ {
164
+ "code": {
165
+ "system": "http://hl7.org/fhir/message-type",
166
+ "code": "admin-notify"
167
+ },
168
+ "category": "Consequence",
169
+ "mode": "receiver",
170
+ "focus": "Patient",
171
+ "request": {
172
+ "reference": "StructureDefinition/daf-patient"
173
+ },
174
+ "response": {
175
+ "reference": "StructureDefinition/MessageHeader"
176
+ },
177
+ "documentation": "Notification of an update to a patient resource. changing the links is not supported"
178
+ }
179
+ ]
180
+ }
181
+ ],
182
+ "document": [
183
+ {
184
+ "mode": "consumer",
185
+ "documentation": "Basic rules for all documents in the EHR system",
186
+ "profile": {
187
+ "reference": "http://fhir.hl7.org/base/Profilebc054d23-75e1-4dc6-aca5-838b6b1ac81d/_history/b5fdd9fc-b021-4ea1-911a-721a60663796"
188
+ }
189
+ }
190
+ ]
191
+ }
@@ -0,0 +1,201 @@
1
+ <?xml version="1.0" encoding="UTF-8"?><CapabilityStatement xmlns="http://hl7.org/fhir">
2
+ <id value="example"/>
3
+ <text>
4
+ <status value="generated"/>
5
+ <div xmlns="http://www.w3.org/1999/xhtml">
6
+
7
+ <p>The EHR Server supports the following transactions for the resource Person: read, vread,
8
+ update, history, search(name,gender), create and updates.</p>
9
+
10
+ <p>The EHR System supports the following message: admin-notify::Person.</p>
11
+
12
+ <p>The EHR Application has a
13
+ <a href="http://fhir.hl7.org/base/Profilebc054d23-75e1-4dc6-aca5-838b6b1ac81d/_history/b5fdd9fc-b021-4ea1-911a-721a60663796">general document profile</a>.
14
+ </p>
15
+
16
+ </div>
17
+ </text>
18
+ <!-- the identifier for this CapabilityStatement statement.
19
+ The identifier and version establish identifiers that other specifications etc.may use to
20
+ refer to the CapabilityStatement statement that this resource represents in a logical manner
21
+ rather than in a literal (URL) fashion
22
+
23
+ The identifier should be globally unique - a UUID, an OID, or a URL/URI
24
+ -->
25
+ <url value="68D043B5-9ECF-4559-A57A-396E0D452311"/>
26
+ <version value="20130510"/>
27
+ <name value="ACME EHR CapabilityStatement statement"/>
28
+ <status value="draft"/>
29
+ <experimental value="true"/>
30
+ <date value="2012-01-04"/>
31
+ <publisher value="ACME Corporation"/>
32
+ <contact>
33
+ <name value="System Administrator"/>
34
+ <telecom>
35
+ <system value="email"/>
36
+ <value value="wile@acme.org"/>
37
+ </telecom>
38
+ </contact>
39
+ <description value="This is the FHIR CapabilityStatement statement for the main EHR at ACME for the private interface - it does not describe the public interface"/>
40
+ <purpose value="Main EHR CapabilityStatement statement, published for contracting and operational support"/>
41
+ <copyright value="Copyright © Acme Healthcare and GoodCorp EHR Systems"/>
42
+ <kind value="instance"/>
43
+ <software>
44
+ <name value="EHR"/>
45
+ <version value="0.00.020.2134"/>
46
+ <releaseDate value="2012-01-04"/>
47
+ </software>
48
+ <implementation>
49
+ <description value="main EHR at ACME"/>
50
+ <url value="http://10.2.3.4/fhir"/>
51
+ </implementation>
52
+
53
+ <!-- while the FHIR infrastructure is turning over prior to development, a version is
54
+ required. Note that this may be rescinded later? -->
55
+ <fhirVersion value="1.0.0"/>
56
+ <!-- this system accepts unknown content in the resources -->
57
+ <acceptUnknown value="both"/>
58
+ <!-- this system can do either xml or json. (Listing both implies full support for either, with interconversion) -->
59
+ <format value="xml"/>
60
+ <format value="json"/>
61
+ <!-- in a real CapabilityStatement statement, it's unlikely that a single CapabilityStatement statement
62
+ would declare CapabilityStatement for REST, messaging and documents, though it is legal.
63
+ This example does so in order to show all the parts of a CapabilityStatement statement -->
64
+ <rest>
65
+ <!-- this is a server CapabilityStatement statement. Note that servers are required to provide
66
+ one of these. It can easily be edited by hand - copy this, replace the metadata above,
67
+ delete the messaging and document stuff below, and then replace the details appropriately. -->
68
+ <mode value="server"/>
69
+ <documentation value="Main FHIR endpoint for acem health"/>
70
+ <security>
71
+ <!-- cors support is highly recommended - mandatory if using SMART on FHIR -->
72
+ <cors value="true"/>
73
+ <service>
74
+ <coding>
75
+ <system value="http://hl7.org/fhir/restful-security-service"/>
76
+ <code value="SMART-on-FHIR"/>
77
+ </coding>
78
+ </service>
79
+ <description value="See Smart on FHIR documentation"/>
80
+ <certificate>
81
+ <type value="application/jwt"/>
82
+ <!-- base JWT. this blob is not valid -->
83
+ <blob value="IHRoaXMgYmxvYiBpcyBub3QgdmFsaWQ="/>
84
+ </certificate>
85
+ </security>
86
+
87
+ <!-- zero or more of these - declaration of support for a resource -->
88
+ <resource>
89
+ <type value="Patient"/>
90
+ <!-- let's assume that HL7 has stood up a profile registry at http://fhir.hl7.org/fhir
91
+ - it's likely to have a registry, though this is not decided, nor is a URL decided.
92
+ This application simply uses a profile registered directly with HL7. For the simplest
93
+ case of a FHIR REST Server, just delete this profile reference. Profile references do
94
+ not need to be a UUID, though a profile registry could insist that they are -->
95
+ <profile>
96
+ <reference value="http://fhir.hl7.org/base/Profile7896271d-57f6-4231-89dc-dcc91eab2416"/>
97
+ </profile>
98
+ <interaction>
99
+ <code value="read"/>
100
+ </interaction>
101
+ <interaction>
102
+ <code value="vread"/>
103
+ <documentation value="Only supported for patient records since 12-Dec 2012"/>
104
+ </interaction>
105
+ <interaction>
106
+ <code value="update"/>
107
+ </interaction>
108
+ <interaction>
109
+ <code value="history-instance"/>
110
+ </interaction>
111
+ <interaction>
112
+ <code value="create"/>
113
+ </interaction>
114
+ <interaction>
115
+ <code value="history-type"/>
116
+ </interaction>
117
+ <versioning value="versioned-update"/>
118
+ <readHistory value="true"/>
119
+ <!-- this server doesn't let the clients create identities -->
120
+ <updateCreate value="false"/>
121
+ <!-- it's good to support conditional create on patients; this solves a common middleware problem -->
122
+ <conditionalCreate value="true"/>
123
+ <conditionalUpdate value="false"/><!-- 0..1 If allows/uses conditional update -->
124
+ <conditionalDelete value="not-supported"/>
125
+ <searchInclude value="Organization"/>
126
+ <searchRevInclude value="Person"/>
127
+ <searchParam>
128
+ <name value="identifier"/>
129
+ <definition value="http://hl7.org/fhir/SearchParameter/Patient-identifier"/>
130
+ <type value="token"/>
131
+ <documentation value="Only supports search by institution MRN"/>
132
+ <modifier value="missing"/>
133
+ </searchParam>
134
+ <searchParam>
135
+ <name value="careprovider"/>
136
+ <definition value="http://hl7.org/fhir/SearchParameter/Patient-careprovider"/>
137
+ <type value="reference"/>
138
+ <!-- there's not a lot of value in saying this, since it's the only
139
+ choice anyway. but in other cases it's pretty important -->
140
+ <target value="Organization"/>
141
+ <modifier value="missing"/>
142
+ <chain value="name"/>
143
+ <chain value="identifier"/>
144
+ </searchParam>
145
+ </resource>
146
+ <interaction>
147
+ <code value="transaction"/>
148
+ </interaction>
149
+ <interaction>
150
+ <code value="history-system"/>
151
+ </interaction>
152
+
153
+ <compartment value="http://hl7.org/fhir/compartment/Patient"/>
154
+ </rest>
155
+ <!-- a messaging CapabilityStatement statement. Applications are not required to make a CapabilityStatement
156
+ statement with regard to messaging, though there is active argument that they should. -->
157
+
158
+ <messaging>
159
+ <endpoint>
160
+ <protocol>
161
+ <system value="http://hl7.org/fhir/message-transport"/>
162
+ <code value="mllp"/>
163
+ </protocol>
164
+ <!-- LLP server at 10.1.1.10 on port 9234 -->
165
+ <address value="mllp:10.1.1.10:9234"/>
166
+ </endpoint>
167
+ <reliableCache value="30"/>
168
+ <documentation value="ADT A08 equivalent for external system notifications"/>
169
+ <event>
170
+
171
+ <code>
172
+ <system value="http://hl7.org/fhir/message-type"/>
173
+ <code value="admin-notify"/>
174
+ </code>
175
+ <category value="Consequence"/>
176
+ <!-- this a receiver - i.e. answers. Not neccessariy a server (though this is) -->
177
+ <mode value="receiver"/>
178
+ <focus value="Patient"/>
179
+ <!-- specify a profile for the request person. Very often there's no
180
+ point profiling the response, it's not interesting -->
181
+ <request>
182
+ <reference value="StructureDefinition/daf-patient"/>
183
+ </request>
184
+ <response>
185
+ <reference value="StructureDefinition/MessageHeader"/>
186
+ </response>
187
+ <documentation value="Notification of an update to a patient resource. changing the links is not supported"/>
188
+ </event>
189
+ </messaging>
190
+
191
+ <!-- a document CapabilityStatement statement -->
192
+ <document>
193
+ <mode value="consumer"/>
194
+ <documentation value="Basic rules for all documents in the EHR system"/>
195
+ <!-- this is the important element: a reference to a published document profile
196
+ note that this is a version specific reference. -->
197
+ <profile>
198
+ <reference value="http://fhir.hl7.org/base/Profilebc054d23-75e1-4dc6-aca5-838b6b1ac81d/_history/b5fdd9fc-b021-4ea1-911a-721a60663796"/>
199
+ </profile>
200
+ </document>
201
+ </CapabilityStatement>
@@ -21,6 +21,6 @@ module FHIR
21
21
  'xhtml' => { 'type'=>'string' }
22
22
  }
23
23
  TYPES = ['Reference', 'Quantity', 'Period', 'Attachment', 'Duration', 'Count', 'Range', 'Annotation', 'Money', 'Identifier', 'Coding', 'Signature', 'SampledData', 'Ratio', 'Distance', 'Age', 'CodeableConcept', 'Extension', 'BackboneElement', 'Narrative', 'Element', 'Meta', 'RelatedResource', 'Address', 'TriggerDefinition', 'Contributor', 'DataRequirement', 'ContactDetail', 'HumanName', 'ContactPoint', 'UsageContext', 'Timing', 'ElementDefinition', 'ParameterDefinition']
24
- RESOURCES = ['CodeSystem', 'ValueSet', 'DomainResource', 'Parameters', 'Resource', 'Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'VisionPrescription']
24
+ RESOURCES = ['CodeSystem', 'ValueSet', 'DomainResource', 'Parameters', 'Resource', 'Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'CapabilityStatement', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'VisionPrescription']
25
25
 
26
26
  end
@@ -0,0 +1,451 @@
1
+ module FHIR
2
+ class CapabilityStatement < FHIR::Model
3
+ include FHIR::Hashable
4
+ include FHIR::Json
5
+ include FHIR::Xml
6
+
7
+ SEARCH_PARAMS = ["context", "date", "description", "event", "fhirversion", "format", "mode", "name", "publisher", "resource", "resourceprofile", "securityservice", "software", "status", "supported-profile", "url", "version"]
8
+ METADATA = {
9
+ 'id' => {'type'=>'id', 'path'=>'CapabilityStatement.id', 'min'=>0, 'max'=>1},
10
+ 'meta' => {'type'=>'Meta', 'path'=>'CapabilityStatement.meta', 'min'=>0, 'max'=>1},
11
+ 'implicitRules' => {'type'=>'uri', 'path'=>'CapabilityStatement.implicitRules', 'min'=>0, 'max'=>1},
12
+ 'language' => {'type'=>'code', 'path'=>'CapabilityStatement.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/languages'}},
13
+ 'text' => {'type'=>'Narrative', 'path'=>'CapabilityStatement.text', 'min'=>0, 'max'=>1},
14
+ 'contained' => {'type'=>'Resource', 'path'=>'CapabilityStatement.contained', 'min'=>0, 'max'=>Float::INFINITY},
15
+ 'extension' => {'type'=>'Extension', 'path'=>'CapabilityStatement.extension', 'min'=>0, 'max'=>Float::INFINITY},
16
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'CapabilityStatement.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
17
+ 'url' => {'type'=>'uri', 'path'=>'CapabilityStatement.url', 'min'=>0, 'max'=>1},
18
+ 'version' => {'type'=>'string', 'path'=>'CapabilityStatement.version', 'min'=>0, 'max'=>1},
19
+ 'name' => {'type'=>'string', 'path'=>'CapabilityStatement.name', 'min'=>0, 'max'=>1},
20
+ 'title' => {'type'=>'string', 'path'=>'CapabilityStatement.title', 'min'=>0, 'max'=>1},
21
+ 'status' => {'valid_codes'=>{'http://hl7.org/fhir/conformance-resource-status'=>['draft', 'active', 'retired', 'draft', 'active', 'retired']}, 'type'=>'code', 'path'=>'CapabilityStatement.status', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/conformance-resource-status'}},
22
+ 'experimental' => {'type'=>'boolean', 'path'=>'CapabilityStatement.experimental', 'min'=>0, 'max'=>1},
23
+ 'date' => {'type'=>'dateTime', 'path'=>'CapabilityStatement.date', 'min'=>1, 'max'=>1},
24
+ 'publisher' => {'type'=>'string', 'path'=>'CapabilityStatement.publisher', 'min'=>0, 'max'=>1},
25
+ 'contact' => {'type'=>'CapabilityStatement::Contact', 'path'=>'CapabilityStatement.contact', 'min'=>0, 'max'=>Float::INFINITY},
26
+ 'description' => {'type'=>'markdown', 'path'=>'CapabilityStatement.description', 'min'=>0, 'max'=>1},
27
+ 'useContext' => {'valid_codes'=>{'https://www.usps.com/'=>['AK', 'AL', 'AR', 'AS', 'AZ', 'CA', 'CO', 'CT', 'DC', 'DE', 'FL', 'FM', 'GA', 'GU', 'HI', 'IA', 'ID', 'IL', 'IN', 'KS', 'KY', 'LA', 'MA', 'MD', 'ME', 'MH', 'MI', 'MN', 'MO', 'MP', 'MS', 'MT', 'NC', 'ND', 'NE', 'NH', 'NJ', 'NM', 'NV', 'NY', 'OH', 'OK', 'OR', 'PA', 'PR', 'PW', 'RI', 'SC', 'SD', 'TN', 'TX', 'UM', 'UT', 'VA', 'VI', 'VT', 'WA', 'WI', 'WV', 'WY'], 'http://hl7.org/fhir/practitioner-specialty'=>['cardio', 'dent', 'dietary', 'midw', 'sysarch'], 'urn:iso:std:iso:3166'=>['AD', 'AE', 'AF', 'AG', 'AI', 'AL', 'AM', 'AN', 'AO', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AW', 'AX', 'AZ', 'BA', 'BB', 'BD', 'BE', 'BF', 'BG', 'BH', 'BI', 'BJ', 'BL', 'BM', 'BN', 'BO', 'BQ', 'BR', 'BS', 'BT', 'BU', 'BV', 'BW', 'BY', 'BZ', 'CA', 'CC', 'CD', 'CF', 'CG', 'CH', 'CI', 'CK', 'CL', 'CM', 'CN', 'CO', 'CR', 'CS', 'CT', 'CU', 'CV', 'CW', 'CX', 'CY', 'CZ', 'DD', 'DE', 'DJ', 'DK', 'DM', 'DO', 'DY', 'DZ', 'EC', 'EE', 'EG', 'EH', 'ER', 'ES', 'ET', 'FI', 'FJ', 'FK', 'FM', 'FO', 'FQ', 'FR', 'GA', 'GB', 'GD', 'GE', 'GF', 'GG', 'GH', 'GI', 'GL', 'GM', 'GN', 'GP', 'GQ', 'GR', 'GS', 'GT', 'GU', 'GW', 'GY', 'HK', 'HM', 'HN', 'HR', 'HT', 'HU', 'HV', 'ID', 'IE', 'IL', 'IM', 'IN', 'IO', 'IQ', 'IR', 'IS', 'IT', 'JE', 'JM', 'JO', 'JP', 'JT', 'KE', 'KG', 'KH', 'KI', 'KM', 'KN', 'KP', 'KR', 'KW', 'KY', 'KZ', 'LA', 'LB', 'LC', 'LI', 'LK', 'LR', 'LS', 'LT', 'LU', 'LV', 'LY', 'MA', 'MC', 'MD', 'ME', 'MF', 'MG', 'MH', 'MI', 'MK', 'ML', 'MM', 'MN', 'MO', 'MP', 'MQ', 'MR', 'MS', 'MT', 'MU', 'MV', 'MW', 'MX', 'MY', 'MZ', 'NA', 'NC', 'NE', 'NF', 'NG', 'NH', 'NI', 'NL', 'NO', 'NP', 'NQ', 'NR', 'NT', 'NU', 'NZ', 'OM', 'PA', 'PC', 'PE', 'PF', 'PG', 'PH', 'PK', 'PL', 'PM', 'PN', 'PR', 'PS', 'PT', 'PU', 'PW', 'PY', 'PZ', 'QA', 'RE', 'RH', 'RO', 'RS', 'RU', 'RW', 'SA', 'SB', 'SC', 'SD', 'SE', 'SG', 'SH', 'SI', 'SJ', 'SK', 'SL', 'SM', 'SN', 'SO', 'SR', 'SS', 'ST', 'SU', 'SV', 'SX', 'SY', 'SZ', 'TC', 'TD', 'TF', 'TG', 'TH', 'TJ', 'TK', 'TL', 'TM', 'TN', 'TO', 'TP', 'TR', 'TT', 'TV', 'TW', 'TZ', 'UA', 'UG', 'UM', 'US', 'UY', 'UZ', 'VA', 'VC', 'VD', 'VE', 'VG', 'VI', 'VN', 'VU', 'WF', 'WK', 'WS', 'YD', 'YE', 'YT', 'YU', 'ZA', 'ZM', 'ZR', 'ZW'], 'http://unstats.un.org/unsd/methods/m49/m49.htm'=>['004', '008', '012', '016', '020', '024', '028', '031', '032', '036', '040', '044', '048', '050', '051', '052', '056', '060', '064', '068', '070', '072', '076', '084', '090', '092', '096', '100', '104', '108', '112', '116', '120', '124', '132', '136', '140', '144', '148', '152', '156', '170', '174', '175', '178', '180', '184', '188', '191', '192', '196', '203', '204', '208', '212', '214', '218', '222', '226', '231', '232', '233', '234', '238', '242', '246', '248', '250', '254', '258', '262', '266', '268', '270', '275', '276', '288', '292', '296', '300', '304', '308', '312', '316', '320', '324', '328', '332', '336', '340', '344', '348', '352', '356', '360', '364', '368', '372', '376', '380', '384', '388', '392', '398', '400', '404', '408', '410', '414', '417', '418', '422', '426', '428', '430', '434', '438', '440', '442', '446', '450', '454', '458', '462', '466', '470', '474', '478', '480', '484', '492', '496', '498', '499', '500', '504', '508', '512', '516', '520', '524', '528', '531', '533', '534', '535', '540', '548', '554', '558', '562', '566', '570', '574', '578', '580', '583', '584', '585', '586', '591', '598', '600', '604', '608', '612', '616', '620', '624', '626', '630', '634', '638', '642', '643', '646', '652', '654', '659', '660', '662', '663', '666', '670', '674', '678', '680', '682', '686', '688', '690', '694', '702', '703', '704', '705', '706', '710', '716', '724', '728', '729', '732', '740', '744', '748', '752', '756', '760', '762', '764', '768', '772', '776', '780', '784', '788', '792', '795', '796', '798', '800', '804', '807', '818', '826', '830', '831', '832', '833', '834', '840', '850', '854', '858', '860', '862', '876', '882', '887', '894']}, 'type'=>'CodeableConcept', 'path'=>'CapabilityStatement.useContext', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/use-context'}},
28
+ 'jurisdiction' => {'type'=>'CodeableConcept', 'path'=>'CapabilityStatement.jurisdiction', 'min'=>0, 'max'=>Float::INFINITY },
29
+ 'purpose' => {'type'=>'markdown', 'path'=>'CapabilityStatement.purpose', 'min'=>0, 'max'=>1},
30
+ 'copyright' => {'type'=>'string', 'path'=>'CapabilityStatement.copyright', 'min'=>0, 'max'=>1},
31
+ 'kind' => {'valid_codes'=>{'http://hl7.org/fhir/conformance-statement-kind'=>['instance', 'capability', 'requirements', 'instance', 'capability', 'requirements']}, 'type'=>'code', 'path'=>'CapabilityStatement.kind', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/conformance-statement-kind'}},
32
+ 'instantiates' => {'type'=>'uri', 'path'=>'CapabilityStatement.instantiates', 'min'=>0, 'max'=>Float::INFINITY},
33
+ 'software' => {'type'=>'CapabilityStatement::Software', 'path'=>'CapabilityStatement.software', 'min'=>0, 'max'=>1},
34
+ 'implementation' => {'type'=>'CapabilityStatement::Implementation', 'path'=>'CapabilityStatement.implementation', 'min'=>0, 'max'=>1},
35
+ 'fhirVersion' => {'type'=>'id', 'path'=>'CapabilityStatement.fhirVersion', 'min'=>1, 'max'=>1},
36
+ 'acceptUnknown' => {'valid_codes'=>{'http://hl7.org/fhir/unknown-content-code'=>['no', 'extensions', 'elements', 'both', 'no', 'extensions', 'elements', 'both']}, 'type'=>'code', 'path'=>'CapabilityStatement.acceptUnknown', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/unknown-content-code'}},
37
+ 'format' => {'type'=>'code', 'path'=>'CapabilityStatement.format', 'min'=>1, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'required', 'uri'=>'http://www.rfc-editor.org/bcp/bcp13.txt'}},
38
+ 'profile' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/StructureDefinition'], 'type'=>'Reference', 'path'=>'CapabilityStatement.profile', 'min'=>0, 'max'=>Float::INFINITY},
39
+ 'rest' => {'type'=>'CapabilityStatement::Rest', 'path'=>'CapabilityStatement.rest', 'min'=>0, 'max'=>Float::INFINITY},
40
+ 'messaging' => {'type'=>'CapabilityStatement::Messaging', 'path'=>'CapabilityStatement.messaging', 'min'=>0, 'max'=>Float::INFINITY},
41
+ 'document' => {'type'=>'CapabilityStatement::Document', 'path'=>'CapabilityStatement.document', 'min'=>0, 'max'=>Float::INFINITY}
42
+ }
43
+
44
+ class Contact < FHIR::Model
45
+ include FHIR::Hashable
46
+ include FHIR::Json
47
+ include FHIR::Xml
48
+
49
+ METADATA = {
50
+ 'id' => {'type'=>'string', 'path'=>'Contact.id', 'min'=>0, 'max'=>1},
51
+ 'extension' => {'type'=>'Extension', 'path'=>'Contact.extension', 'min'=>0, 'max'=>Float::INFINITY},
52
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Contact.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
53
+ 'name' => {'type'=>'string', 'path'=>'Contact.name', 'min'=>0, 'max'=>1},
54
+ 'telecom' => {'type'=>'ContactPoint', 'path'=>'Contact.telecom', 'min'=>0, 'max'=>Float::INFINITY}
55
+ }
56
+
57
+ attr_accessor :id # 0-1 string
58
+ attr_accessor :extension # 0-* [ Extension ]
59
+ attr_accessor :modifierExtension # 0-* [ Extension ]
60
+ attr_accessor :name # 0-1 string
61
+ attr_accessor :telecom # 0-* [ ContactPoint ]
62
+ end
63
+
64
+ class Software < FHIR::Model
65
+ include FHIR::Hashable
66
+ include FHIR::Json
67
+ include FHIR::Xml
68
+
69
+ METADATA = {
70
+ 'id' => {'type'=>'string', 'path'=>'Software.id', 'min'=>0, 'max'=>1},
71
+ 'extension' => {'type'=>'Extension', 'path'=>'Software.extension', 'min'=>0, 'max'=>Float::INFINITY},
72
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Software.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
73
+ 'name' => {'type'=>'string', 'path'=>'Software.name', 'min'=>1, 'max'=>1},
74
+ 'version' => {'type'=>'string', 'path'=>'Software.version', 'min'=>0, 'max'=>1},
75
+ 'releaseDate' => {'type'=>'dateTime', 'path'=>'Software.releaseDate', 'min'=>0, 'max'=>1}
76
+ }
77
+
78
+ attr_accessor :id # 0-1 string
79
+ attr_accessor :extension # 0-* [ Extension ]
80
+ attr_accessor :modifierExtension # 0-* [ Extension ]
81
+ attr_accessor :name # 1-1 string
82
+ attr_accessor :version # 0-1 string
83
+ attr_accessor :releaseDate # 0-1 dateTime
84
+ end
85
+
86
+ class Implementation < FHIR::Model
87
+ include FHIR::Hashable
88
+ include FHIR::Json
89
+ include FHIR::Xml
90
+
91
+ METADATA = {
92
+ 'id' => {'type'=>'string', 'path'=>'Implementation.id', 'min'=>0, 'max'=>1},
93
+ 'extension' => {'type'=>'Extension', 'path'=>'Implementation.extension', 'min'=>0, 'max'=>Float::INFINITY},
94
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Implementation.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
95
+ 'description' => {'type'=>'string', 'path'=>'Implementation.description', 'min'=>1, 'max'=>1},
96
+ 'url' => {'type'=>'uri', 'path'=>'Implementation.url', 'min'=>0, 'max'=>1}
97
+ }
98
+
99
+ attr_accessor :id # 0-1 string
100
+ attr_accessor :extension # 0-* [ Extension ]
101
+ attr_accessor :modifierExtension # 0-* [ Extension ]
102
+ attr_accessor :description # 1-1 string
103
+ attr_accessor :url # 0-1 uri
104
+ end
105
+
106
+ class Rest < FHIR::Model
107
+ include FHIR::Hashable
108
+ include FHIR::Json
109
+ include FHIR::Xml
110
+
111
+ METADATA = {
112
+ 'id' => {'type'=>'string', 'path'=>'Rest.id', 'min'=>0, 'max'=>1},
113
+ 'extension' => {'type'=>'Extension', 'path'=>'Rest.extension', 'min'=>0, 'max'=>Float::INFINITY},
114
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Rest.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
115
+ 'mode' => {'valid_codes'=>{'http://hl7.org/fhir/restful-conformance-mode'=>['client', 'server', 'client', 'server']}, 'type'=>'code', 'path'=>'Rest.mode', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/restful-conformance-mode'}},
116
+ 'documentation' => {'type'=>'string', 'path'=>'Rest.documentation', 'min'=>0, 'max'=>1},
117
+ 'security' => {'type'=>'CapabilityStatement::Rest::Security', 'path'=>'Rest.security', 'min'=>0, 'max'=>1},
118
+ 'resource' => {'type'=>'CapabilityStatement::Rest::Resource', 'path'=>'Rest.resource', 'min'=>0, 'max'=>Float::INFINITY},
119
+ 'interaction' => {'type'=>'CapabilityStatement::Rest::Interaction', 'path'=>'Rest.interaction', 'min'=>0, 'max'=>Float::INFINITY},
120
+ 'searchParam' => {'type'=>'CapabilityStatement::Rest::Resource::SearchParam', 'path'=>'Rest.searchParam', 'min'=>0, 'max'=>Float::INFINITY},
121
+ 'operation' => {'type'=>'CapabilityStatement::Rest::Operation', 'path'=>'Rest.operation', 'min'=>0, 'max'=>Float::INFINITY},
122
+ 'compartment' => {'type'=>'uri', 'path'=>'Rest.compartment', 'min'=>0, 'max'=>Float::INFINITY}
123
+ }
124
+
125
+ class Security < FHIR::Model
126
+ include FHIR::Hashable
127
+ include FHIR::Json
128
+ include FHIR::Xml
129
+
130
+ METADATA = {
131
+ 'id' => {'type'=>'string', 'path'=>'Security.id', 'min'=>0, 'max'=>1},
132
+ 'extension' => {'type'=>'Extension', 'path'=>'Security.extension', 'min'=>0, 'max'=>Float::INFINITY},
133
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Security.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
134
+ 'cors' => {'type'=>'boolean', 'path'=>'Security.cors', 'min'=>0, 'max'=>1},
135
+ 'service' => {'valid_codes'=>{'http://hl7.org/fhir/restful-security-service'=>['OAuth', 'SMART-on-FHIR', 'NTLM', 'Basic', 'Kerberos', 'Certificates', 'OAuth', 'SMART-on-FHIR', 'NTLM', 'Basic', 'Kerberos', 'Certificates']}, 'type'=>'CodeableConcept', 'path'=>'Security.service', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/restful-security-service'}},
136
+ 'description' => {'type'=>'string', 'path'=>'Security.description', 'min'=>0, 'max'=>1},
137
+ 'certificate' => {'type'=>'CapabilityStatement::Rest::Security::Certificate', 'path'=>'Security.certificate', 'min'=>0, 'max'=>Float::INFINITY}
138
+ }
139
+
140
+ class Certificate < FHIR::Model
141
+ include FHIR::Hashable
142
+ include FHIR::Json
143
+ include FHIR::Xml
144
+
145
+ METADATA = {
146
+ 'id' => {'type'=>'string', 'path'=>'Certificate.id', 'min'=>0, 'max'=>1},
147
+ 'extension' => {'type'=>'Extension', 'path'=>'Certificate.extension', 'min'=>0, 'max'=>Float::INFINITY},
148
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Certificate.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
149
+ 'type' => {'type'=>'code', 'path'=>'Certificate.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://www.rfc-editor.org/bcp/bcp13.txt'}},
150
+ 'blob' => {'type'=>'base64Binary', 'path'=>'Certificate.blob', 'min'=>0, 'max'=>1}
151
+ }
152
+
153
+ attr_accessor :id # 0-1 string
154
+ attr_accessor :extension # 0-* [ Extension ]
155
+ attr_accessor :modifierExtension # 0-* [ Extension ]
156
+ attr_accessor :type # 0-1 code
157
+ attr_accessor :blob # 0-1 base64Binary
158
+ end
159
+
160
+ attr_accessor :id # 0-1 string
161
+ attr_accessor :extension # 0-* [ Extension ]
162
+ attr_accessor :modifierExtension # 0-* [ Extension ]
163
+ attr_accessor :cors # 0-1 boolean
164
+ attr_accessor :service # 0-* [ CodeableConcept ]
165
+ attr_accessor :description # 0-1 string
166
+ attr_accessor :certificate # 0-* [ CapabilityStatement::Rest::Security::Certificate ]
167
+ end
168
+
169
+ class Resource < FHIR::Model
170
+ include FHIR::Hashable
171
+ include FHIR::Json
172
+ include FHIR::Xml
173
+
174
+ METADATA = {
175
+ 'id' => {'type'=>'string', 'path'=>'Resource.id', 'min'=>0, 'max'=>1},
176
+ 'extension' => {'type'=>'Extension', 'path'=>'Resource.extension', 'min'=>0, 'max'=>Float::INFINITY},
177
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Resource.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
178
+ 'type' => {'valid_codes'=>{'http://hl7.org/fhir/resource-types'=>['Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription', 'Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription']}, 'type'=>'code', 'path'=>'Resource.type', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-types'}},
179
+ 'profile' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/StructureDefinition'], 'type'=>'Reference', 'path'=>'Resource.profile', 'min'=>0, 'max'=>1},
180
+ 'documentation' => {'type'=>'markdown', 'path'=>'Resource.documentation', 'min'=>0, 'max'=>1},
181
+ 'interaction' => {'type'=>'CapabilityStatement::Rest::Resource::Interaction', 'path'=>'Resource.interaction', 'min'=>1, 'max'=>Float::INFINITY},
182
+ 'versioning' => {'valid_codes'=>{'http://hl7.org/fhir/versioning-policy'=>['no-version', 'versioned', 'versioned-update', 'no-version', 'versioned', 'versioned-update']}, 'type'=>'code', 'path'=>'Resource.versioning', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/versioning-policy'}},
183
+ 'readHistory' => {'type'=>'boolean', 'path'=>'Resource.readHistory', 'min'=>0, 'max'=>1},
184
+ 'updateCreate' => {'type'=>'boolean', 'path'=>'Resource.updateCreate', 'min'=>0, 'max'=>1},
185
+ 'conditionalCreate' => {'type'=>'boolean', 'path'=>'Resource.conditionalCreate', 'min'=>0, 'max'=>1},
186
+ 'conditionalRead' => {'valid_codes'=>{'http://hl7.org/fhir/conditional-read-status'=>['not-supported', 'modified-since', 'not-match', 'full-support', 'not-supported', 'modified-since', 'not-match', 'full-support']}, 'type'=>'code', 'path'=>'Resource.conditionalRead', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/conditional-read-status'}},
187
+ 'conditionalUpdate' => {'type'=>'boolean', 'path'=>'Resource.conditionalUpdate', 'min'=>0, 'max'=>1},
188
+ 'conditionalDelete' => {'valid_codes'=>{'http://hl7.org/fhir/conditional-delete-status'=>['not-supported', 'single', 'multiple', 'not-supported', 'single', 'multiple']}, 'type'=>'code', 'path'=>'Resource.conditionalDelete', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/conditional-delete-status'}},
189
+ 'searchInclude' => {'type'=>'string', 'path'=>'Resource.searchInclude', 'min'=>0, 'max'=>Float::INFINITY},
190
+ 'searchRevInclude' => {'type'=>'string', 'path'=>'Resource.searchRevInclude', 'min'=>0, 'max'=>Float::INFINITY},
191
+ 'searchParam' => {'type'=>'CapabilityStatement::Rest::Resource::SearchParam', 'path'=>'Resource.searchParam', 'min'=>0, 'max'=>Float::INFINITY}
192
+ }
193
+
194
+ class Interaction < FHIR::Model
195
+ include FHIR::Hashable
196
+ include FHIR::Json
197
+ include FHIR::Xml
198
+
199
+ METADATA = {
200
+ 'id' => {'type'=>'string', 'path'=>'Interaction.id', 'min'=>0, 'max'=>1},
201
+ 'extension' => {'type'=>'Extension', 'path'=>'Interaction.extension', 'min'=>0, 'max'=>Float::INFINITY},
202
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Interaction.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
203
+ 'code' => {'valid_codes'=>{'http://hl7.org/fhir/restful-interaction'=>['read', 'vread', 'update', 'delete', 'history-instance', 'history-type', 'create', 'search-type', 'read', 'vread', 'update', 'delete', 'history', 'create', 'search', 'conformance', 'transaction', 'batch', 'operation']}, 'type'=>'code', 'path'=>'Interaction.code', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/type-restful-interaction'}},
204
+ 'documentation' => {'type'=>'string', 'path'=>'Interaction.documentation', 'min'=>0, 'max'=>1}
205
+ }
206
+
207
+ attr_accessor :id # 0-1 string
208
+ attr_accessor :extension # 0-* [ Extension ]
209
+ attr_accessor :modifierExtension # 0-* [ Extension ]
210
+ attr_accessor :code # 1-1 code
211
+ attr_accessor :documentation # 0-1 string
212
+ end
213
+
214
+ class SearchParam < FHIR::Model
215
+ include FHIR::Hashable
216
+ include FHIR::Json
217
+ include FHIR::Xml
218
+
219
+ METADATA = {
220
+ 'id' => {'type'=>'string', 'path'=>'SearchParam.id', 'min'=>0, 'max'=>1},
221
+ 'extension' => {'type'=>'Extension', 'path'=>'SearchParam.extension', 'min'=>0, 'max'=>Float::INFINITY},
222
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'SearchParam.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
223
+ 'name' => {'type'=>'string', 'path'=>'SearchParam.name', 'min'=>1, 'max'=>1},
224
+ 'definition' => {'type'=>'uri', 'path'=>'SearchParam.definition', 'min'=>0, 'max'=>1},
225
+ 'type' => {'valid_codes'=>{'http://hl7.org/fhir/search-param-type'=>['number', 'date', 'string', 'token', 'reference', 'composite', 'quantity', 'uri', 'number', 'date', 'string', 'token', 'reference', 'composite', 'quantity', 'uri']}, 'type'=>'code', 'path'=>'SearchParam.type', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/search-param-type'}},
226
+ 'documentation' => {'type'=>'string', 'path'=>'SearchParam.documentation', 'min'=>0, 'max'=>1},
227
+ 'target' => {'valid_codes'=>{'http://hl7.org/fhir/resource-types'=>['Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription', 'Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription']}, 'type'=>'code', 'path'=>'SearchParam.target', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-types'}},
228
+ 'modifier' => {'valid_codes'=>{'http://hl7.org/fhir/search-modifier-code'=>['missing', 'exact', 'contains', 'not', 'text', 'in', 'not-in', 'below', 'above', 'type', 'missing', 'exact', 'contains', 'not', 'text', 'in', 'not-in', 'below', 'above', 'type']}, 'type'=>'code', 'path'=>'SearchParam.modifier', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/search-modifier-code'}},
229
+ 'chain' => {'type'=>'string', 'path'=>'SearchParam.chain', 'min'=>0, 'max'=>Float::INFINITY}
230
+ }
231
+
232
+ attr_accessor :id # 0-1 string
233
+ attr_accessor :extension # 0-* [ Extension ]
234
+ attr_accessor :modifierExtension # 0-* [ Extension ]
235
+ attr_accessor :name # 1-1 string
236
+ attr_accessor :definition # 0-1 uri
237
+ attr_accessor :type # 1-1 code
238
+ attr_accessor :documentation # 0-1 string
239
+ attr_accessor :target # 0-* [ code ]
240
+ attr_accessor :modifier # 0-* [ code ]
241
+ attr_accessor :chain # 0-* [ string ]
242
+ end
243
+
244
+ attr_accessor :id # 0-1 string
245
+ attr_accessor :extension # 0-* [ Extension ]
246
+ attr_accessor :modifierExtension # 0-* [ Extension ]
247
+ attr_accessor :type # 1-1 code
248
+ attr_accessor :profile # 0-1 Reference(StructureDefinition)
249
+ attr_accessor :documentation # 0-1 markdown
250
+ attr_accessor :interaction # 1-* [ CapabilityStatement::Rest::Resource::Interaction ]
251
+ attr_accessor :versioning # 0-1 code
252
+ attr_accessor :readHistory # 0-1 boolean
253
+ attr_accessor :updateCreate # 0-1 boolean
254
+ attr_accessor :conditionalCreate # 0-1 boolean
255
+ attr_accessor :conditionalRead # 0-1 code
256
+ attr_accessor :conditionalUpdate # 0-1 boolean
257
+ attr_accessor :conditionalDelete # 0-1 code
258
+ # attr_accessor :referencePolicy # 0-1 code
259
+ attr_accessor :searchInclude # 0-* [ string ]
260
+ attr_accessor :searchRevInclude # 0-* [ string ]
261
+ attr_accessor :searchParam # 0-* [ CapabilityStatement::Rest::Resource::SearchParam ]
262
+ end
263
+
264
+ class Interaction < FHIR::Model
265
+ include FHIR::Hashable
266
+ include FHIR::Json
267
+ include FHIR::Xml
268
+
269
+ METADATA = {
270
+ 'id' => {'type'=>'string', 'path'=>'Interaction.id', 'min'=>0, 'max'=>1},
271
+ 'extension' => {'type'=>'Extension', 'path'=>'Interaction.extension', 'min'=>0, 'max'=>Float::INFINITY},
272
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Interaction.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
273
+ 'code' => {'valid_codes'=>{'http://hl7.org/fhir/restful-interaction'=>['transaction', 'batch', 'search-system', 'history-system', 'read', 'vread', 'update', 'delete', 'history', 'create', 'search', 'conformance', 'transaction', 'batch', 'operation']}, 'type'=>'code', 'path'=>'Interaction.code', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/system-restful-interaction'}},
274
+ 'documentation' => {'type'=>'string', 'path'=>'Interaction.documentation', 'min'=>0, 'max'=>1}
275
+ }
276
+
277
+ attr_accessor :id # 0-1 string
278
+ attr_accessor :extension # 0-* [ Extension ]
279
+ attr_accessor :modifierExtension # 0-* [ Extension ]
280
+ attr_accessor :code # 1-1 code
281
+ attr_accessor :documentation # 0-1 string
282
+ end
283
+
284
+ class Operation < FHIR::Model
285
+ include FHIR::Hashable
286
+ include FHIR::Json
287
+ include FHIR::Xml
288
+
289
+ METADATA = {
290
+ 'id' => {'type'=>'string', 'path'=>'Operation.id', 'min'=>0, 'max'=>1},
291
+ 'extension' => {'type'=>'Extension', 'path'=>'Operation.extension', 'min'=>0, 'max'=>Float::INFINITY},
292
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Operation.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
293
+ 'name' => {'type'=>'string', 'path'=>'Operation.name', 'min'=>1, 'max'=>1},
294
+ 'definition' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/OperationDefinition'], 'type'=>'Reference', 'path'=>'Operation.definition', 'min'=>1, 'max'=>1}
295
+ }
296
+
297
+ attr_accessor :id # 0-1 string
298
+ attr_accessor :extension # 0-* [ Extension ]
299
+ attr_accessor :modifierExtension # 0-* [ Extension ]
300
+ attr_accessor :name # 1-1 string
301
+ attr_accessor :definition # 1-1 Reference(OperationDefinition)
302
+ end
303
+
304
+ attr_accessor :id # 0-1 string
305
+ attr_accessor :extension # 0-* [ Extension ]
306
+ attr_accessor :modifierExtension # 0-* [ Extension ]
307
+ attr_accessor :mode # 1-1 code
308
+ attr_accessor :documentation # 0-1 string
309
+ attr_accessor :security # 0-1 CapabilityStatement::Rest::Security
310
+ attr_accessor :resource # 0-* [ CapabilityStatement::Rest::Resource ]
311
+ attr_accessor :interaction # 0-* [ CapabilityStatement::Rest::Interaction ]
312
+ attr_accessor :searchParam # 0-* [ CapabilityStatement::Rest::Resource::SearchParam ]
313
+ attr_accessor :operation # 0-* [ CapabilityStatement::Rest::Operation ]
314
+ attr_accessor :compartment # 0-* [ uri ]
315
+ end
316
+
317
+ class Messaging < FHIR::Model
318
+ include FHIR::Hashable
319
+ include FHIR::Json
320
+ include FHIR::Xml
321
+
322
+ METADATA = {
323
+ 'id' => {'type'=>'string', 'path'=>'Messaging.id', 'min'=>0, 'max'=>1},
324
+ 'extension' => {'type'=>'Extension', 'path'=>'Messaging.extension', 'min'=>0, 'max'=>Float::INFINITY},
325
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Messaging.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
326
+ 'endpoint' => {'type'=>'CapabilityStatement::Messaging::Endpoint', 'path'=>'Messaging.endpoint', 'min'=>0, 'max'=>Float::INFINITY},
327
+ 'reliableCache' => {'type'=>'unsignedInt', 'path'=>'Messaging.reliableCache', 'min'=>0, 'max'=>1},
328
+ 'documentation' => {'type'=>'string', 'path'=>'Messaging.documentation', 'min'=>0, 'max'=>1},
329
+ 'event' => {'type'=>'CapabilityStatement::Messaging::Event', 'path'=>'Messaging.event', 'min'=>1, 'max'=>Float::INFINITY}
330
+ }
331
+
332
+ class Endpoint < FHIR::Model
333
+ include FHIR::Hashable
334
+ include FHIR::Json
335
+ include FHIR::Xml
336
+
337
+ METADATA = {
338
+ 'id' => {'type'=>'string', 'path'=>'Endpoint.id', 'min'=>0, 'max'=>1},
339
+ 'extension' => {'type'=>'Extension', 'path'=>'Endpoint.extension', 'min'=>0, 'max'=>Float::INFINITY},
340
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Endpoint.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
341
+ 'protocol' => {'valid_codes'=>{'http://hl7.org/fhir/message-transport'=>['http', 'ftp', 'mllp', 'http', 'ftp', 'mllp']}, 'type'=>'Coding', 'path'=>'Endpoint.protocol', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/message-transport'}},
342
+ 'address' => {'type'=>'uri', 'path'=>'Endpoint.address', 'min'=>1, 'max'=>1}
343
+ }
344
+
345
+ attr_accessor :id # 0-1 string
346
+ attr_accessor :extension # 0-* [ Extension ]
347
+ attr_accessor :modifierExtension # 0-* [ Extension ]
348
+ attr_accessor :protocol # 1-1 Coding
349
+ attr_accessor :address # 1-1 uri
350
+ end
351
+
352
+ class Event < FHIR::Model
353
+ include FHIR::Hashable
354
+ include FHIR::Json
355
+ include FHIR::Xml
356
+
357
+ METADATA = {
358
+ 'id' => {'type'=>'string', 'path'=>'Event.id', 'min'=>0, 'max'=>1},
359
+ 'extension' => {'type'=>'Extension', 'path'=>'Event.extension', 'min'=>0, 'max'=>Float::INFINITY},
360
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Event.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
361
+ 'code' => {'valid_codes'=>{'http://hl7.org/fhir/message-events'=>['CodeSystem-expand', 'MedicationAdministration-Complete', 'MedicationAdministration-Nullification', 'MedicationAdministration-Recording', 'MedicationAdministration-Update', 'admin-notify', 'diagnosticreport-provide', 'observation-provide', 'patient-link', 'patient-unlink', 'valueset-expand', 'CodeSystem-expand', 'MedicationAdministration-Complete', 'MedicationAdministration-Nullification', 'MedicationAdministration-Recording', 'MedicationAdministration-Update', 'admin-notify', 'diagnosticreport-provide', 'observation-provide', 'patient-link', 'patient-unlink', 'valueset-expand']}, 'type'=>'Coding', 'path'=>'Event.code', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'preferred', 'uri'=>'http://hl7.org/fhir/ValueSet/message-events'}},
362
+ 'category' => {'valid_codes'=>{'http://hl7.org/fhir/message-significance-category'=>['Consequence', 'Currency', 'Notification', 'Consequence', 'Currency', 'Notification']}, 'type'=>'code', 'path'=>'Event.category', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/message-significance-category'}},
363
+ 'mode' => {'valid_codes'=>{'http://hl7.org/fhir/message-conformance-event-mode'=>['sender', 'receiver', 'sender', 'receiver']}, 'type'=>'code', 'path'=>'Event.mode', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/message-conformance-event-mode'}},
364
+ 'focus' => {'valid_codes'=>{'http://hl7.org/fhir/resource-types'=>['Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription', 'Account', 'ActivityDefinition', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BodySite', 'Bundle', 'CarePlan', 'CareTeam', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Conformance', 'Consent', 'Contract', 'Coverage', 'DataElement', 'DecisionSupportServiceModule', 'DetectedIssue', 'Device', 'DeviceComponent', 'DeviceMetric', 'DeviceUseRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DiagnosticRequest', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EligibilityRequest', 'EligibilityResponse', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'ExpansionProfile', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingManifest', 'ImagingStudy', 'Immunization', 'ImmunizationRecommendation', 'ImplementationGuide', 'Library', 'Linkage', 'List', 'Location', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationOrder', 'MedicationStatement', 'MessageHeader', 'NamingSystem', 'NutritionRequest', 'Observation', 'OperationDefinition', 'OperationOutcome', 'Organization', 'Parameters', 'Patient', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'Practitioner', 'PractitionerRole', 'Procedure', 'ProcedureRequest', 'ProcessRequest', 'ProcessResponse', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'ReferralRequest', 'RelatedPerson', 'Resource', 'RiskAssessment', 'Schedule', 'SearchParameter', 'Sequence', 'Slot', 'Specimen', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TestScript', 'ValueSet', 'VisionPrescription']}, 'type'=>'code', 'path'=>'Event.focus', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/resource-types'}},
365
+ 'request' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/StructureDefinition'], 'type'=>'Reference', 'path'=>'Event.request', 'min'=>1, 'max'=>1},
366
+ 'response' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/StructureDefinition'], 'type'=>'Reference', 'path'=>'Event.response', 'min'=>1, 'max'=>1},
367
+ 'documentation' => {'type'=>'string', 'path'=>'Event.documentation', 'min'=>0, 'max'=>1}
368
+ }
369
+
370
+ attr_accessor :id # 0-1 string
371
+ attr_accessor :extension # 0-* [ Extension ]
372
+ attr_accessor :modifierExtension # 0-* [ Extension ]
373
+ attr_accessor :code # 1-1 Coding
374
+ attr_accessor :category # 0-1 code
375
+ attr_accessor :mode # 1-1 code
376
+ attr_accessor :focus # 1-1 code
377
+ attr_accessor :request # 1-1 Reference(StructureDefinition)
378
+ attr_accessor :response # 1-1 Reference(StructureDefinition)
379
+ attr_accessor :documentation # 0-1 string
380
+ end
381
+
382
+ attr_accessor :id # 0-1 string
383
+ attr_accessor :extension # 0-* [ Extension ]
384
+ attr_accessor :modifierExtension # 0-* [ Extension ]
385
+ attr_accessor :endpoint # 0-* [ CapabilityStatement::Messaging::Endpoint ]
386
+ attr_accessor :reliableCache # 0-1 unsignedInt
387
+ attr_accessor :documentation # 0-1 string
388
+ attr_accessor :event # 1-* [ CapabilityStatement::Messaging::Event ]
389
+ end
390
+
391
+ class Document < FHIR::Model
392
+ include FHIR::Hashable
393
+ include FHIR::Json
394
+ include FHIR::Xml
395
+
396
+ METADATA = {
397
+ 'id' => {'type'=>'string', 'path'=>'Document.id', 'min'=>0, 'max'=>1},
398
+ 'extension' => {'type'=>'Extension', 'path'=>'Document.extension', 'min'=>0, 'max'=>Float::INFINITY},
399
+ 'modifierExtension' => {'type'=>'Extension', 'path'=>'Document.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
400
+ 'mode' => {'valid_codes'=>{'http://hl7.org/fhir/document-mode'=>['producer', 'consumer', 'producer', 'consumer']}, 'type'=>'code', 'path'=>'Document.mode', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/document-mode'}},
401
+ 'documentation' => {'type'=>'string', 'path'=>'Document.documentation', 'min'=>0, 'max'=>1},
402
+ 'profile' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/StructureDefinition'], 'type'=>'Reference', 'path'=>'Document.profile', 'min'=>1, 'max'=>1}
403
+ }
404
+
405
+ attr_accessor :id # 0-1 string
406
+ attr_accessor :extension # 0-* [ Extension ]
407
+ attr_accessor :modifierExtension # 0-* [ Extension ]
408
+ attr_accessor :mode # 1-1 code
409
+ attr_accessor :documentation # 0-1 string
410
+ attr_accessor :profile # 1-1 Reference(StructureDefinition)
411
+ end
412
+
413
+ attr_accessor :id # 0-1 id
414
+ attr_accessor :meta # 0-1 Meta
415
+ attr_accessor :implicitRules # 0-1 uri
416
+ attr_accessor :language # 0-1 code
417
+ attr_accessor :text # 0-1 Narrative
418
+ attr_accessor :contained # 0-* [ Resource ]
419
+ attr_accessor :extension # 0-* [ Extension ]
420
+ attr_accessor :modifierExtension # 0-* [ Extension ]
421
+ attr_accessor :url # 0-1 uri
422
+ attr_accessor :version # 0-1 string
423
+ attr_accessor :name # 0-1 string
424
+ attr_accessor :title # 0-1 string
425
+ attr_accessor :status # 1-1 code
426
+ attr_accessor :experimental # 0-1 boolean
427
+ attr_accessor :date # 1-1 dateTime
428
+ attr_accessor :publisher # 0-1 string
429
+ attr_accessor :contact # 0-* [ CapabilityStatement::Contact ]
430
+ attr_accessor :description # 0-1 markdown
431
+ attr_accessor :useContext # 0-* [ CodeableConcept ]
432
+ attr_accessor :jurisdiction # 0-* [ CodeableConcept ]
433
+ attr_accessor :purpose # 0-1 markdown
434
+ attr_accessor :copyright # 0-1 string
435
+ attr_accessor :kind # 1-1 code
436
+ attr_accessor :instantiates # 0-* [ uri ]
437
+ attr_accessor :software # 0-1 CapabilityStatement::Software
438
+ attr_accessor :implementation # 0-1 CapabilityStatement::Implementation
439
+ attr_accessor :fhirVersion # 1-1 id
440
+ attr_accessor :acceptUnknown # 1-1 code
441
+ attr_accessor :format # 1-* [ code ]
442
+ attr_accessor :profile # 0-* [ Reference(StructureDefinition) ]
443
+ attr_accessor :rest # 0-* [ CapabilityStatement::Rest ]
444
+ attr_accessor :messaging # 0-* [ CapabilityStatement::Messaging ]
445
+ attr_accessor :document # 0-* [ CapabilityStatement::Document ]
446
+
447
+ def resourceType
448
+ 'CapabilityStatement'
449
+ end
450
+ end
451
+ end
@@ -1,5 +1,5 @@
1
1
  module FHIR
2
2
  module Models
3
- VERSION = '1.6.7'.freeze
3
+ VERSION = '1.6.8'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fhir_models
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.7
4
+ version: 1.6.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Walonoski
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2016-10-12 00:00:00.000000000 Z
13
+ date: 2016-10-24 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: nokogiri
@@ -375,6 +375,7 @@ files:
375
375
  - lib/fhir_models/examples/json/bodysite-example-skin-patch.json
376
376
  - lib/fhir_models/examples/json/bodysite-example-tumor.json
377
377
  - lib/fhir_models/examples/json/bundle-example.json
378
+ - lib/fhir_models/examples/json/capabilitystatement-example.json
378
379
  - lib/fhir_models/examples/json/careplan-example-GPVisit.json
379
380
  - lib/fhir_models/examples/json/careplan-example-f001-heart.json
380
381
  - lib/fhir_models/examples/json/careplan-example-f002-lung.json
@@ -772,6 +773,7 @@ files:
772
773
  - lib/fhir_models/examples/xml/bodysite-example-skin-patch.xml
773
774
  - lib/fhir_models/examples/xml/bodysite-example-tumor.xml
774
775
  - lib/fhir_models/examples/xml/bundle-example.xml
776
+ - lib/fhir_models/examples/xml/capabilitystatement-example.xml
775
777
  - lib/fhir_models/examples/xml/careplan-example-GPVisit.xml
776
778
  - lib/fhir_models/examples/xml/careplan-example-f001-heart.xml
777
779
  - lib/fhir_models/examples/xml/careplan-example-f002-lung.xml
@@ -1157,6 +1159,7 @@ files:
1157
1159
  - lib/fhir_models/fhir/resources/Binary.rb
1158
1160
  - lib/fhir_models/fhir/resources/BodySite.rb
1159
1161
  - lib/fhir_models/fhir/resources/Bundle.rb
1162
+ - lib/fhir_models/fhir/resources/CapabilityStatement.rb
1160
1163
  - lib/fhir_models/fhir/resources/CarePlan.rb
1161
1164
  - lib/fhir_models/fhir/resources/CareTeam.rb
1162
1165
  - lib/fhir_models/fhir/resources/Claim.rb