fhir_models 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +0 -1
- data/Gemfile.lock +1 -1
- data/Rakefile +0 -1
- data/fhir_models.gemspec +1 -1
- data/lib/fhir/metadata.rb +25 -0
- data/lib/fhir/resources/Account.rb +54 -0
- data/lib/fhir/resources/AllergyIntolerance.rb +92 -0
- data/lib/fhir/resources/Appointment.rb +88 -0
- data/lib/fhir/resources/AppointmentResponse.rb +48 -0
- data/lib/fhir/resources/AuditEvent.rb +188 -0
- data/lib/fhir/resources/Basic.rb +42 -0
- data/lib/fhir/resources/Binary.rb +28 -0
- data/lib/fhir/resources/BodySite.rb +44 -0
- data/lib/fhir/resources/Bundle.rb +154 -0
- data/lib/fhir/resources/CarePlan.rb +184 -0
- data/lib/fhir/resources/CareTeam.rb +70 -0
- data/lib/fhir/resources/Claim.rb +490 -0
- data/lib/fhir/resources/ClaimResponse.rb +421 -0
- data/lib/fhir/resources/ClinicalImpression.rb +131 -0
- data/lib/fhir/resources/CodeSystem.rb +225 -0
- data/lib/fhir/resources/Communication.rb +83 -0
- data/lib/fhir/resources/CommunicationRequest.rb +90 -0
- data/lib/fhir/resources/CompartmentDefinition.rb +98 -0
- data/lib/fhir/resources/Composition.rb +136 -0
- data/lib/fhir/resources/ConceptMap.rb +168 -0
- data/lib/fhir/resources/Condition.rb +126 -0
- data/lib/fhir/resources/Conformance.rb +442 -0
- data/lib/fhir/resources/Contract.rb +320 -0
- data/lib/fhir/resources/Coverage.rb +77 -0
- data/lib/fhir/resources/DataElement.rb +104 -0
- data/lib/fhir/resources/DecisionSupportRule.rb +42 -0
- data/lib/fhir/resources/DecisionSupportServiceModule.rb +40 -0
- data/lib/fhir/resources/DetectedIssue.rb +74 -0
- data/lib/fhir/resources/Device.rb +64 -0
- data/lib/fhir/resources/DeviceComponent.rb +74 -0
- data/lib/fhir/resources/DeviceMetric.rb +74 -0
- data/lib/fhir/resources/DeviceUseRequest.rb +68 -0
- data/lib/fhir/resources/DeviceUseStatement.rb +60 -0
- data/lib/fhir/resources/DiagnosticOrder.rb +106 -0
- data/lib/fhir/resources/DiagnosticReport.rb +91 -0
- data/lib/fhir/resources/DocumentManifest.rb +99 -0
- data/lib/fhir/resources/DocumentReference.rb +156 -0
- data/lib/fhir/resources/DomainResource.rb +32 -0
- data/lib/fhir/resources/EligibilityRequest.rb +90 -0
- data/lib/fhir/resources/EligibilityResponse.rb +152 -0
- data/lib/fhir/resources/Encounter.rb +172 -0
- data/lib/fhir/resources/EnrollmentRequest.rb +52 -0
- data/lib/fhir/resources/EnrollmentResponse.rb +52 -0
- data/lib/fhir/resources/EpisodeOfCare.rb +74 -0
- data/lib/fhir/resources/ExpansionProfile.rb +284 -0
- data/lib/fhir/resources/ExplanationOfBenefit.rb +764 -0
- data/lib/fhir/resources/FamilyMemberHistory.rb +110 -0
- data/lib/fhir/resources/Flag.rb +48 -0
- data/lib/fhir/resources/Goal.rb +91 -0
- data/lib/fhir/resources/Group.rb +105 -0
- data/lib/fhir/resources/GuidanceResponse.rb +139 -0
- data/lib/fhir/resources/HealthcareService.rb +122 -0
- data/lib/fhir/resources/ImagingExcerpt.rb +210 -0
- data/lib/fhir/resources/ImagingObjectSelection.rb +136 -0
- data/lib/fhir/resources/ImagingStudy.rb +130 -0
- data/lib/fhir/resources/Immunization.rb +148 -0
- data/lib/fhir/resources/ImmunizationRecommendation.rb +114 -0
- data/lib/fhir/resources/ImplementationGuide.rb +211 -0
- data/lib/fhir/resources/Library.rb +145 -0
- data/lib/fhir/resources/Linkage.rb +56 -0
- data/lib/fhir/resources/List.rb +82 -0
- data/lib/fhir/resources/Location.rb +78 -0
- data/lib/fhir/resources/Measure.rb +160 -0
- data/lib/fhir/resources/MeasureReport.rb +204 -0
- data/lib/fhir/resources/Media.rb +56 -0
- data/lib/fhir/resources/Medication.rb +154 -0
- data/lib/fhir/resources/MedicationAdministration.rb +104 -0
- data/lib/fhir/resources/MedicationDispense.rb +141 -0
- data/lib/fhir/resources/MedicationOrder.rb +172 -0
- data/lib/fhir/resources/MedicationStatement.rb +117 -0
- data/lib/fhir/resources/MessageHeader.rb +124 -0
- data/lib/fhir/resources/ModuleDefinition.rb +249 -0
- data/lib/fhir/resources/NamingSystem.rb +102 -0
- data/lib/fhir/resources/NutritionOrder.rb +211 -0
- data/lib/fhir/resources/Observation.rb +187 -0
- data/lib/fhir/resources/OperationDefinition.rb +153 -0
- data/lib/fhir/resources/OperationOutcome.rb +62 -0
- data/lib/fhir/resources/Order.rb +73 -0
- data/lib/fhir/resources/OrderResponse.rb +46 -0
- data/lib/fhir/resources/OrderSet.rb +38 -0
- data/lib/fhir/resources/Organization.rb +72 -0
- data/lib/fhir/resources/Parameters.rb +117 -0
- data/lib/fhir/resources/Patient.rb +166 -0
- data/lib/fhir/resources/PaymentNotice.rb +71 -0
- data/lib/fhir/resources/PaymentReconciliation.rb +140 -0
- data/lib/fhir/resources/Person.rb +72 -0
- data/lib/fhir/resources/Practitioner.rb +110 -0
- data/lib/fhir/resources/PractitionerRole.rb +102 -0
- data/lib/fhir/resources/Procedure.rb +122 -0
- data/lib/fhir/resources/ProcedureRequest.rb +73 -0
- data/lib/fhir/resources/ProcessRequest.rb +99 -0
- data/lib/fhir/resources/ProcessResponse.rb +92 -0
- data/lib/fhir/resources/Protocol.rb +242 -0
- data/lib/fhir/resources/Provenance.rb +122 -0
- data/lib/fhir/resources/Questionnaire.rb +205 -0
- data/lib/fhir/resources/QuestionnaireResponse.rb +123 -0
- data/lib/fhir/resources/ReferralRequest.rb +68 -0
- data/lib/fhir/resources/RelatedPerson.rb +52 -0
- data/lib/fhir/resources/Resource.rb +24 -0
- data/lib/fhir/resources/RiskAssessment.rb +88 -0
- data/lib/fhir/resources/Schedule.rb +46 -0
- data/lib/fhir/resources/SearchParameter.rb +86 -0
- data/lib/fhir/resources/Sequence.rb +238 -0
- data/lib/fhir/resources/Slot.rb +54 -0
- data/lib/fhir/resources/Specimen.rb +140 -0
- data/lib/fhir/resources/StructureDefinition.rb +164 -0
- data/lib/fhir/resources/StructureMap.rb +297 -0
- data/lib/fhir/resources/Subscription.rb +72 -0
- data/lib/fhir/resources/Substance.rb +86 -0
- data/lib/fhir/resources/SupplyDelivery.rb +54 -0
- data/lib/fhir/resources/SupplyRequest.rb +77 -0
- data/lib/fhir/resources/Task.rb +240 -0
- data/lib/fhir/resources/TestScript.rb +692 -0
- data/lib/fhir/resources/ValueSet.rb +289 -0
- data/lib/fhir/resources/VisionPrescription.rb +97 -0
- data/lib/fhir/types/ActionDefinition.rb +109 -0
- data/lib/fhir/types/Address.rb +36 -0
- data/lib/fhir/types/Annotation.rb +27 -0
- data/lib/fhir/types/Attachment.rb +32 -0
- data/lib/fhir/types/BackboneElement.rb +18 -0
- data/lib/fhir/types/CodeableConcept.rb +20 -0
- data/lib/fhir/types/Coding.rb +26 -0
- data/lib/fhir/types/ContactPoint.rb +26 -0
- data/lib/fhir/types/DataRequirement.rb +78 -0
- data/lib/fhir/types/Element.rb +16 -0
- data/lib/fhir/types/ElementDefinition.rb +605 -0
- data/lib/fhir/types/Extension.rb +87 -0
- data/lib/fhir/types/HumanName.rb +30 -0
- data/lib/fhir/types/Identifier.rb +28 -0
- data/lib/fhir/types/Meta.rb +26 -0
- data/lib/fhir/types/ModuleMetadata.rb +152 -0
- data/lib/fhir/types/Narrative.rb +20 -0
- data/lib/fhir/types/ParameterDefinition.rb +30 -0
- data/lib/fhir/types/Period.rb +20 -0
- data/lib/fhir/types/Quantity.rb +26 -0
- data/lib/fhir/types/Range.rb +20 -0
- data/lib/fhir/types/Ratio.rb +20 -0
- data/lib/fhir/types/Reference.rb +20 -0
- data/lib/fhir/types/SampledData.rb +30 -0
- data/lib/fhir/types/Signature.rb +31 -0
- data/lib/fhir/types/Timing.rb +69 -0
- data/lib/fhir/types/TriggerDefinition.rb +33 -0
- data/lib/fhir_models.rb +2 -2
- data/lib/tasks/tasks.rake +29 -0
- metadata +145 -2
@@ -0,0 +1,166 @@
|
|
1
|
+
module FHIR
|
2
|
+
class Patient < FHIR::Model
|
3
|
+
include FHIR::Hashable
|
4
|
+
include FHIR::Json
|
5
|
+
include FHIR::Xml
|
6
|
+
|
7
|
+
MULTIPLE_TYPES = {
|
8
|
+
'deceased' => ['boolean', 'dateTime'],
|
9
|
+
'multipleBirth' => ['boolean', 'integer']
|
10
|
+
}
|
11
|
+
SEARCH_PARAMS = ["active", "address", "address-city", "address-country", "address-postalcode", "address-state", "address-use", "animal-breed", "animal-species", "birthdate", "careprovider", "death-date", "deceased", "email", "family", "gender", "given", "identifier", "language", "link", "name", "organization", "phone", "phonetic", "telecom"]
|
12
|
+
METADATA = {
|
13
|
+
'id' => {'type'=>'id', 'path'=>'Patient.id', 'min'=>0, 'max'=>1},
|
14
|
+
'meta' => {'type'=>'Meta', 'path'=>'Patient.meta', 'min'=>0, 'max'=>1},
|
15
|
+
'implicitRules' => {'type'=>'uri', 'path'=>'Patient.implicitRules', 'min'=>0, 'max'=>1},
|
16
|
+
'language' => {'type'=>'code', 'path'=>'Patient.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
|
17
|
+
'text' => {'type'=>'Narrative', 'path'=>'Patient.text', 'min'=>0, 'max'=>1},
|
18
|
+
'contained' => {'type'=>'Resource', 'path'=>'Patient.contained', 'min'=>0, 'max'=>Float::INFINITY},
|
19
|
+
'extension' => {'type'=>'Extension', 'path'=>'Patient.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
20
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Patient.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
21
|
+
'identifier' => {'type'=>'Identifier', 'path'=>'Patient.identifier', 'min'=>0, 'max'=>Float::INFINITY},
|
22
|
+
'active' => {'type'=>'boolean', 'path'=>'Patient.active', 'min'=>0, 'max'=>1},
|
23
|
+
'name' => {'type'=>'HumanName', 'path'=>'Patient.name', 'min'=>0, 'max'=>Float::INFINITY},
|
24
|
+
'telecom' => {'type'=>'ContactPoint', 'path'=>'Patient.telecom', 'min'=>0, 'max'=>Float::INFINITY},
|
25
|
+
'gender' => {'valid_codes'=>{'http://hl7.org/fhir/administrative-gender'=>['male', 'female', 'other', 'unknown']}, 'type'=>'code', 'path'=>'Patient.gender', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/administrative-gender'}},
|
26
|
+
'birthDate' => {'type'=>'date', 'path'=>'Patient.birthDate', 'min'=>0, 'max'=>1},
|
27
|
+
'deceasedBoolean' => {'type'=>'boolean', 'path'=>'Patient.deceased[x]', 'min'=>0, 'max'=>1},
|
28
|
+
'deceasedDateTime' => {'type'=>'dateTime', 'path'=>'Patient.deceased[x]', 'min'=>0, 'max'=>1},
|
29
|
+
'address' => {'type'=>'Address', 'path'=>'Patient.address', 'min'=>0, 'max'=>Float::INFINITY},
|
30
|
+
'maritalStatus' => {'valid_codes'=>{'http://hl7.org/fhir/v3/MaritalStatus'=>['A', 'D', 'I', 'L', 'M', 'P', 'S', 'T', 'W'], 'http://hl7.org/fhir/v3/NullFlavor'=>['UNK'], 'http://hl7.org/fhir/marital-status'=>['U']}, 'type'=>'CodeableConcept', 'path'=>'Patient.maritalStatus', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/marital-status'}},
|
31
|
+
'multipleBirthBoolean' => {'type'=>'boolean', 'path'=>'Patient.multipleBirth[x]', 'min'=>0, 'max'=>1},
|
32
|
+
'multipleBirthInteger' => {'type'=>'integer', 'path'=>'Patient.multipleBirth[x]', 'min'=>0, 'max'=>1},
|
33
|
+
'photo' => {'type'=>'Attachment', 'path'=>'Patient.photo', 'min'=>0, 'max'=>Float::INFINITY},
|
34
|
+
'contact' => {'type'=>'Patient::Contact', 'path'=>'Patient.contact', 'min'=>0, 'max'=>Float::INFINITY},
|
35
|
+
'animal' => {'type'=>'Patient::Animal', 'path'=>'Patient.animal', 'min'=>0, 'max'=>1},
|
36
|
+
'communication' => {'type'=>'Patient::Communication', 'path'=>'Patient.communication', 'min'=>0, 'max'=>Float::INFINITY},
|
37
|
+
'careProvider' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization', 'http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'Patient.careProvider', 'min'=>0, 'max'=>Float::INFINITY},
|
38
|
+
'managingOrganization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Patient.managingOrganization', 'min'=>0, 'max'=>1},
|
39
|
+
'link' => {'type'=>'Patient::Link', 'path'=>'Patient.link', 'min'=>0, 'max'=>Float::INFINITY}
|
40
|
+
}
|
41
|
+
|
42
|
+
class Contact < FHIR::Model
|
43
|
+
include FHIR::Hashable
|
44
|
+
include FHIR::Json
|
45
|
+
include FHIR::Xml
|
46
|
+
|
47
|
+
METADATA = {
|
48
|
+
'id' => {'type'=>'id', 'path'=>'Contact.id', 'min'=>0, 'max'=>1},
|
49
|
+
'extension' => {'type'=>'Extension', 'path'=>'Contact.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
50
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Contact.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
51
|
+
'relationship' => {'valid_codes'=>{'http://hl7.org/fhir/patient-contact-relationship'=>['emergency', 'family', 'guardian', 'friend', 'partner', 'work', 'caregiver', 'agent', 'guarantor', 'owner', 'parent']}, 'type'=>'CodeableConcept', 'path'=>'Contact.relationship', 'min'=>0, 'max'=>Float::INFINITY, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/patient-contact-relationship'}},
|
52
|
+
'name' => {'type'=>'HumanName', 'path'=>'Contact.name', 'min'=>0, 'max'=>1},
|
53
|
+
'telecom' => {'type'=>'ContactPoint', 'path'=>'Contact.telecom', 'min'=>0, 'max'=>Float::INFINITY},
|
54
|
+
'address' => {'type'=>'Address', 'path'=>'Contact.address', 'min'=>0, 'max'=>1},
|
55
|
+
'gender' => {'valid_codes'=>{'http://hl7.org/fhir/administrative-gender'=>['male', 'female', 'other', 'unknown']}, 'type'=>'code', 'path'=>'Contact.gender', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/administrative-gender'}},
|
56
|
+
'organization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Contact.organization', 'min'=>0, 'max'=>1},
|
57
|
+
'period' => {'type'=>'Period', 'path'=>'Contact.period', 'min'=>0, 'max'=>1}
|
58
|
+
}
|
59
|
+
|
60
|
+
attr_accessor :id # 0-1 id
|
61
|
+
attr_accessor :extension # 0-* [ Extension ]
|
62
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
63
|
+
attr_accessor :relationship # 0-* [ CodeableConcept ]
|
64
|
+
attr_accessor :name # 0-1 HumanName
|
65
|
+
attr_accessor :telecom # 0-* [ ContactPoint ]
|
66
|
+
attr_accessor :address # 0-1 Address
|
67
|
+
attr_accessor :gender # 0-1 code
|
68
|
+
attr_accessor :organization # 0-1 Reference(Organization)
|
69
|
+
attr_accessor :period # 0-1 Period
|
70
|
+
end
|
71
|
+
|
72
|
+
class Animal < FHIR::Model
|
73
|
+
include FHIR::Hashable
|
74
|
+
include FHIR::Json
|
75
|
+
include FHIR::Xml
|
76
|
+
|
77
|
+
METADATA = {
|
78
|
+
'id' => {'type'=>'id', 'path'=>'Animal.id', 'min'=>0, 'max'=>1},
|
79
|
+
'extension' => {'type'=>'Extension', 'path'=>'Animal.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
80
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Animal.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
81
|
+
'species' => {'valid_codes'=>{'http://hl7.org/fhir/animal-species'=>['canislf', 'ovisa', 'serinuscd']}, 'type'=>'CodeableConcept', 'path'=>'Animal.species', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/animal-species'}},
|
82
|
+
'breed' => {'valid_codes'=>{'http://hl7.org/fhir/animal-breed'=>['gsd', 'irt', 'tibmas', 'gret']}, 'type'=>'CodeableConcept', 'path'=>'Animal.breed', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/animal-breeds'}},
|
83
|
+
'genderStatus' => {'valid_codes'=>{'http://hl7.org/fhir/animal-genderstatus'=>['neutered', 'intact', 'unknown']}, 'type'=>'CodeableConcept', 'path'=>'Animal.genderStatus', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/animal-genderstatus'}}
|
84
|
+
}
|
85
|
+
|
86
|
+
attr_accessor :id # 0-1 id
|
87
|
+
attr_accessor :extension # 0-* [ Extension ]
|
88
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
89
|
+
attr_accessor :species # 1-1 CodeableConcept
|
90
|
+
attr_accessor :breed # 0-1 CodeableConcept
|
91
|
+
attr_accessor :genderStatus # 0-1 CodeableConcept
|
92
|
+
end
|
93
|
+
|
94
|
+
class Communication < FHIR::Model
|
95
|
+
include FHIR::Hashable
|
96
|
+
include FHIR::Json
|
97
|
+
include FHIR::Xml
|
98
|
+
|
99
|
+
METADATA = {
|
100
|
+
'id' => {'type'=>'id', 'path'=>'Communication.id', 'min'=>0, 'max'=>1},
|
101
|
+
'extension' => {'type'=>'Extension', 'path'=>'Communication.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
102
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Communication.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
103
|
+
'language' => {'type'=>'CodeableConcept', 'path'=>'Communication.language', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
|
104
|
+
'preferred' => {'type'=>'boolean', 'path'=>'Communication.preferred', 'min'=>0, 'max'=>1}
|
105
|
+
}
|
106
|
+
|
107
|
+
attr_accessor :id # 0-1 id
|
108
|
+
attr_accessor :extension # 0-* [ Extension ]
|
109
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
110
|
+
attr_accessor :language # 1-1 CodeableConcept
|
111
|
+
attr_accessor :preferred # 0-1 boolean
|
112
|
+
end
|
113
|
+
|
114
|
+
class Link < FHIR::Model
|
115
|
+
include FHIR::Hashable
|
116
|
+
include FHIR::Json
|
117
|
+
include FHIR::Xml
|
118
|
+
|
119
|
+
METADATA = {
|
120
|
+
'id' => {'type'=>'id', 'path'=>'Link.id', 'min'=>0, 'max'=>1},
|
121
|
+
'extension' => {'type'=>'Extension', 'path'=>'Link.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
122
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Link.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
123
|
+
'other' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient'], 'type'=>'Reference', 'path'=>'Link.other', 'min'=>1, 'max'=>1},
|
124
|
+
'type' => {'valid_codes'=>{'http://hl7.org/fhir/link-type'=>['replace', 'refer', 'seealso']}, 'type'=>'code', 'path'=>'Link.type', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/link-type'}}
|
125
|
+
}
|
126
|
+
|
127
|
+
attr_accessor :id # 0-1 id
|
128
|
+
attr_accessor :extension # 0-* [ Extension ]
|
129
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
130
|
+
attr_accessor :other # 1-1 Reference(Patient)
|
131
|
+
attr_accessor :type # 1-1 code
|
132
|
+
end
|
133
|
+
|
134
|
+
attr_accessor :id # 0-1 id
|
135
|
+
attr_accessor :meta # 0-1 Meta
|
136
|
+
attr_accessor :implicitRules # 0-1 uri
|
137
|
+
attr_accessor :language # 0-1 code
|
138
|
+
attr_accessor :text # 0-1 Narrative
|
139
|
+
attr_accessor :contained # 0-* [ Resource ]
|
140
|
+
attr_accessor :extension # 0-* [ Extension ]
|
141
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
142
|
+
attr_accessor :identifier # 0-* [ Identifier ]
|
143
|
+
attr_accessor :active # 0-1 boolean
|
144
|
+
attr_accessor :name # 0-* [ HumanName ]
|
145
|
+
attr_accessor :telecom # 0-* [ ContactPoint ]
|
146
|
+
attr_accessor :gender # 0-1 code
|
147
|
+
attr_accessor :birthDate # 0-1 date
|
148
|
+
attr_accessor :deceasedBoolean # 0-1 boolean
|
149
|
+
attr_accessor :deceasedDateTime # 0-1 dateTime
|
150
|
+
attr_accessor :address # 0-* [ Address ]
|
151
|
+
attr_accessor :maritalStatus # 0-1 CodeableConcept
|
152
|
+
attr_accessor :multipleBirthBoolean # 0-1 boolean
|
153
|
+
attr_accessor :multipleBirthInteger # 0-1 integer
|
154
|
+
attr_accessor :photo # 0-* [ Attachment ]
|
155
|
+
attr_accessor :contact # 0-* [ Patient::Contact ]
|
156
|
+
attr_accessor :animal # 0-1 Patient::Animal
|
157
|
+
attr_accessor :communication # 0-* [ Patient::Communication ]
|
158
|
+
attr_accessor :careProvider # 0-* [ Reference(Organization|Practitioner) ]
|
159
|
+
attr_accessor :managingOrganization # 0-1 Reference(Organization)
|
160
|
+
attr_accessor :link # 0-* [ Patient::Link ]
|
161
|
+
|
162
|
+
def resourceType
|
163
|
+
'Patient'
|
164
|
+
end
|
165
|
+
end
|
166
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
module FHIR
|
2
|
+
class PaymentNotice < FHIR::Model
|
3
|
+
include FHIR::Hashable
|
4
|
+
include FHIR::Json
|
5
|
+
include FHIR::Xml
|
6
|
+
|
7
|
+
MULTIPLE_TYPES = {
|
8
|
+
'target' => ['Identifier', 'Reference'],
|
9
|
+
'provider' => ['Identifier', 'Reference'],
|
10
|
+
'organization' => ['Identifier', 'Reference'],
|
11
|
+
'request' => ['Identifier', 'Reference'],
|
12
|
+
'response' => ['Identifier', 'Reference']
|
13
|
+
}
|
14
|
+
SEARCH_PARAMS = ["created", "identifier", "organizationidentifier", "organizationreference", "paymentstatus", "provideridentifier", "providerreference", "requestidentifier", "requestreference", "responseidentifier", "responsereference", "statusdate"]
|
15
|
+
METADATA = {
|
16
|
+
'id' => {'type'=>'id', 'path'=>'PaymentNotice.id', 'min'=>0, 'max'=>1},
|
17
|
+
'meta' => {'type'=>'Meta', 'path'=>'PaymentNotice.meta', 'min'=>0, 'max'=>1},
|
18
|
+
'implicitRules' => {'type'=>'uri', 'path'=>'PaymentNotice.implicitRules', 'min'=>0, 'max'=>1},
|
19
|
+
'language' => {'type'=>'code', 'path'=>'PaymentNotice.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
|
20
|
+
'text' => {'type'=>'Narrative', 'path'=>'PaymentNotice.text', 'min'=>0, 'max'=>1},
|
21
|
+
'contained' => {'type'=>'Resource', 'path'=>'PaymentNotice.contained', 'min'=>0, 'max'=>Float::INFINITY},
|
22
|
+
'extension' => {'type'=>'Extension', 'path'=>'PaymentNotice.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
23
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'PaymentNotice.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
24
|
+
'identifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.identifier', 'min'=>0, 'max'=>Float::INFINITY},
|
25
|
+
'ruleset' => {'valid_codes'=>{'http://hl7.org/fhir/ruleset'=>['x12-4010', 'x12-5010', 'x12-7010', 'cdanet-v2', 'cdanet-v4', 'cpha-3']}, 'type'=>'Coding', 'path'=>'PaymentNotice.ruleset', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ruleset'}},
|
26
|
+
'originalRuleset' => {'valid_codes'=>{'http://hl7.org/fhir/ruleset'=>['x12-4010', 'x12-5010', 'x12-7010', 'cdanet-v2', 'cdanet-v4', 'cpha-3']}, 'type'=>'Coding', 'path'=>'PaymentNotice.originalRuleset', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ruleset'}},
|
27
|
+
'created' => {'type'=>'dateTime', 'path'=>'PaymentNotice.created', 'min'=>0, 'max'=>1},
|
28
|
+
'targetIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.target[x]', 'min'=>0, 'max'=>1},
|
29
|
+
'targetReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'PaymentNotice.target[x]', 'min'=>0, 'max'=>1},
|
30
|
+
'providerIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.provider[x]', 'min'=>0, 'max'=>1},
|
31
|
+
'providerReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'PaymentNotice.provider[x]', 'min'=>0, 'max'=>1},
|
32
|
+
'organizationIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.organization[x]', 'min'=>0, 'max'=>1},
|
33
|
+
'organizationReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'PaymentNotice.organization[x]', 'min'=>0, 'max'=>1},
|
34
|
+
'requestIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.request[x]', 'min'=>0, 'max'=>1},
|
35
|
+
'requestReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Resource'], 'type'=>'Reference', 'path'=>'PaymentNotice.request[x]', 'min'=>0, 'max'=>1},
|
36
|
+
'responseIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentNotice.response[x]', 'min'=>0, 'max'=>1},
|
37
|
+
'responseReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Resource'], 'type'=>'Reference', 'path'=>'PaymentNotice.response[x]', 'min'=>0, 'max'=>1},
|
38
|
+
'paymentStatus' => {'valid_codes'=>{'http://hl7.org/fhir/paymentstatus'=>['paid', 'cleared']}, 'type'=>'Coding', 'path'=>'PaymentNotice.paymentStatus', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/payment-status'}},
|
39
|
+
'statusDate' => {'type'=>'date', 'path'=>'PaymentNotice.statusDate', 'min'=>0, 'max'=>1}
|
40
|
+
}
|
41
|
+
|
42
|
+
attr_accessor :id # 0-1 id
|
43
|
+
attr_accessor :meta # 0-1 Meta
|
44
|
+
attr_accessor :implicitRules # 0-1 uri
|
45
|
+
attr_accessor :language # 0-1 code
|
46
|
+
attr_accessor :text # 0-1 Narrative
|
47
|
+
attr_accessor :contained # 0-* [ Resource ]
|
48
|
+
attr_accessor :extension # 0-* [ Extension ]
|
49
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
50
|
+
attr_accessor :identifier # 0-* [ Identifier ]
|
51
|
+
attr_accessor :ruleset # 0-1 Coding
|
52
|
+
attr_accessor :originalRuleset # 0-1 Coding
|
53
|
+
attr_accessor :created # 0-1 dateTime
|
54
|
+
attr_accessor :targetIdentifier # 0-1 Identifier
|
55
|
+
attr_accessor :targetReference # 0-1 Reference(Organization)
|
56
|
+
attr_accessor :providerIdentifier # 0-1 Identifier
|
57
|
+
attr_accessor :providerReference # 0-1 Reference(Practitioner)
|
58
|
+
attr_accessor :organizationIdentifier # 0-1 Identifier
|
59
|
+
attr_accessor :organizationReference # 0-1 Reference(Organization)
|
60
|
+
attr_accessor :requestIdentifier # 0-1 Identifier
|
61
|
+
attr_accessor :requestReference # 0-1 Reference(Resource)
|
62
|
+
attr_accessor :responseIdentifier # 0-1 Identifier
|
63
|
+
attr_accessor :responseReference # 0-1 Reference(Resource)
|
64
|
+
attr_accessor :paymentStatus # 1-1 Coding
|
65
|
+
attr_accessor :statusDate # 0-1 date
|
66
|
+
|
67
|
+
def resourceType
|
68
|
+
'PaymentNotice'
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,140 @@
|
|
1
|
+
module FHIR
|
2
|
+
class PaymentReconciliation < FHIR::Model
|
3
|
+
include FHIR::Hashable
|
4
|
+
include FHIR::Json
|
5
|
+
include FHIR::Xml
|
6
|
+
|
7
|
+
MULTIPLE_TYPES = {
|
8
|
+
'request' => ['Identifier', 'Reference'],
|
9
|
+
'organization' => ['Identifier', 'Reference'],
|
10
|
+
'requestProvider' => ['Identifier', 'Reference'],
|
11
|
+
'requestOrganization' => ['Identifier', 'Reference']
|
12
|
+
}
|
13
|
+
SEARCH_PARAMS = ["created", "disposition", "identifier", "organizationidentifier", "organizationreference", "outcome", "requestidentifier", "requestorganizationidentifier", "requestorganizationreference", "requestprovideridentifier", "requestproviderreference", "requestreference"]
|
14
|
+
METADATA = {
|
15
|
+
'id' => {'type'=>'id', 'path'=>'PaymentReconciliation.id', 'min'=>0, 'max'=>1},
|
16
|
+
'meta' => {'type'=>'Meta', 'path'=>'PaymentReconciliation.meta', 'min'=>0, 'max'=>1},
|
17
|
+
'implicitRules' => {'type'=>'uri', 'path'=>'PaymentReconciliation.implicitRules', 'min'=>0, 'max'=>1},
|
18
|
+
'language' => {'type'=>'code', 'path'=>'PaymentReconciliation.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
|
19
|
+
'text' => {'type'=>'Narrative', 'path'=>'PaymentReconciliation.text', 'min'=>0, 'max'=>1},
|
20
|
+
'contained' => {'type'=>'Resource', 'path'=>'PaymentReconciliation.contained', 'min'=>0, 'max'=>Float::INFINITY},
|
21
|
+
'extension' => {'type'=>'Extension', 'path'=>'PaymentReconciliation.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
22
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'PaymentReconciliation.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
23
|
+
'identifier' => {'type'=>'Identifier', 'path'=>'PaymentReconciliation.identifier', 'min'=>0, 'max'=>Float::INFINITY},
|
24
|
+
'requestIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentReconciliation.request[x]', 'min'=>0, 'max'=>1},
|
25
|
+
'requestReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/ProcessRequest'], 'type'=>'Reference', 'path'=>'PaymentReconciliation.request[x]', 'min'=>0, 'max'=>1},
|
26
|
+
'outcome' => {'valid_codes'=>{'http://hl7.org/fhir/remittance-outcome'=>['complete', 'error']}, 'type'=>'code', 'path'=>'PaymentReconciliation.outcome', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/remittance-outcome'}},
|
27
|
+
'disposition' => {'type'=>'string', 'path'=>'PaymentReconciliation.disposition', 'min'=>0, 'max'=>1},
|
28
|
+
'ruleset' => {'valid_codes'=>{'http://hl7.org/fhir/ruleset'=>['x12-4010', 'x12-5010', 'x12-7010', 'cdanet-v2', 'cdanet-v4', 'cpha-3']}, 'type'=>'Coding', 'path'=>'PaymentReconciliation.ruleset', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ruleset'}},
|
29
|
+
'originalRuleset' => {'valid_codes'=>{'http://hl7.org/fhir/ruleset'=>['x12-4010', 'x12-5010', 'x12-7010', 'cdanet-v2', 'cdanet-v4', 'cpha-3']}, 'type'=>'Coding', 'path'=>'PaymentReconciliation.originalRuleset', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/ruleset'}},
|
30
|
+
'created' => {'type'=>'dateTime', 'path'=>'PaymentReconciliation.created', 'min'=>0, 'max'=>1},
|
31
|
+
'period' => {'type'=>'Period', 'path'=>'PaymentReconciliation.period', 'min'=>0, 'max'=>1},
|
32
|
+
'organizationIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentReconciliation.organization[x]', 'min'=>0, 'max'=>1},
|
33
|
+
'organizationReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'PaymentReconciliation.organization[x]', 'min'=>0, 'max'=>1},
|
34
|
+
'requestProviderIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentReconciliation.requestProvider[x]', 'min'=>0, 'max'=>1},
|
35
|
+
'requestProviderReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Practitioner'], 'type'=>'Reference', 'path'=>'PaymentReconciliation.requestProvider[x]', 'min'=>0, 'max'=>1},
|
36
|
+
'requestOrganizationIdentifier' => {'type'=>'Identifier', 'path'=>'PaymentReconciliation.requestOrganization[x]', 'min'=>0, 'max'=>1},
|
37
|
+
'requestOrganizationReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'PaymentReconciliation.requestOrganization[x]', 'min'=>0, 'max'=>1},
|
38
|
+
'detail' => {'type'=>'PaymentReconciliation::Detail', 'path'=>'PaymentReconciliation.detail', 'min'=>0, 'max'=>Float::INFINITY},
|
39
|
+
'form' => {'valid_codes'=>{'http://hl7.org/fhir/forms-codes'=>['1', '2']}, 'type'=>'Coding', 'path'=>'PaymentReconciliation.form', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/forms'}},
|
40
|
+
'total' => {'type'=>'Quantity', 'path'=>'PaymentReconciliation.total', 'min'=>1, 'max'=>1},
|
41
|
+
'note' => {'type'=>'PaymentReconciliation::Note', 'path'=>'PaymentReconciliation.note', 'min'=>0, 'max'=>Float::INFINITY}
|
42
|
+
}
|
43
|
+
|
44
|
+
class Detail < FHIR::Model
|
45
|
+
include FHIR::Hashable
|
46
|
+
include FHIR::Json
|
47
|
+
include FHIR::Xml
|
48
|
+
|
49
|
+
MULTIPLE_TYPES = {
|
50
|
+
'request' => ['Identifier', 'Reference'],
|
51
|
+
'responce' => ['Identifier', 'Reference'],
|
52
|
+
'submitter' => ['Identifier', 'Reference'],
|
53
|
+
'payee' => ['Identifier', 'Reference']
|
54
|
+
}
|
55
|
+
METADATA = {
|
56
|
+
'id' => {'type'=>'id', 'path'=>'Detail.id', 'min'=>0, 'max'=>1},
|
57
|
+
'extension' => {'type'=>'Extension', 'path'=>'Detail.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
58
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Detail.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
59
|
+
'type' => {'valid_codes'=>{'http://hl7.org/fhir/payment-type'=>['payment', 'adjustment', 'advance']}, 'type'=>'Coding', 'path'=>'Detail.type', 'min'=>1, 'max'=>1, 'binding'=>{'strength'=>'example', 'uri'=>'http://hl7.org/fhir/ValueSet/payment-type'}},
|
60
|
+
'requestIdentifier' => {'type'=>'Identifier', 'path'=>'Detail.request[x]', 'min'=>0, 'max'=>1},
|
61
|
+
'requestReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Resource'], 'type'=>'Reference', 'path'=>'Detail.request[x]', 'min'=>0, 'max'=>1},
|
62
|
+
'responceIdentifier' => {'type'=>'Identifier', 'path'=>'Detail.responce[x]', 'min'=>0, 'max'=>1},
|
63
|
+
'responceReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Resource'], 'type'=>'Reference', 'path'=>'Detail.responce[x]', 'min'=>0, 'max'=>1},
|
64
|
+
'submitterIdentifier' => {'type'=>'Identifier', 'path'=>'Detail.submitter[x]', 'min'=>0, 'max'=>1},
|
65
|
+
'submitterReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Detail.submitter[x]', 'min'=>0, 'max'=>1},
|
66
|
+
'payeeIdentifier' => {'type'=>'Identifier', 'path'=>'Detail.payee[x]', 'min'=>0, 'max'=>1},
|
67
|
+
'payeeReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Detail.payee[x]', 'min'=>0, 'max'=>1},
|
68
|
+
'date' => {'type'=>'date', 'path'=>'Detail.date', 'min'=>0, 'max'=>1},
|
69
|
+
'amount' => {'type'=>'Quantity', 'path'=>'Detail.amount', 'min'=>0, 'max'=>1}
|
70
|
+
}
|
71
|
+
|
72
|
+
attr_accessor :id # 0-1 id
|
73
|
+
attr_accessor :extension # 0-* [ Extension ]
|
74
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
75
|
+
attr_accessor :type # 1-1 Coding
|
76
|
+
attr_accessor :requestIdentifier # 0-1 Identifier
|
77
|
+
attr_accessor :requestReference # 0-1 Reference(Resource)
|
78
|
+
attr_accessor :responceIdentifier # 0-1 Identifier
|
79
|
+
attr_accessor :responceReference # 0-1 Reference(Resource)
|
80
|
+
attr_accessor :submitterIdentifier # 0-1 Identifier
|
81
|
+
attr_accessor :submitterReference # 0-1 Reference(Organization)
|
82
|
+
attr_accessor :payeeIdentifier # 0-1 Identifier
|
83
|
+
attr_accessor :payeeReference # 0-1 Reference(Organization)
|
84
|
+
attr_accessor :date # 0-1 date
|
85
|
+
attr_accessor :amount # 0-1 Quantity
|
86
|
+
end
|
87
|
+
|
88
|
+
class Note < FHIR::Model
|
89
|
+
include FHIR::Hashable
|
90
|
+
include FHIR::Json
|
91
|
+
include FHIR::Xml
|
92
|
+
|
93
|
+
METADATA = {
|
94
|
+
'id' => {'type'=>'id', 'path'=>'Note.id', 'min'=>0, 'max'=>1},
|
95
|
+
'extension' => {'type'=>'Extension', 'path'=>'Note.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
96
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Note.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
97
|
+
'type' => {'valid_codes'=>{'http://hl7.org/fhir/note-type'=>['display', 'print', 'printoper']}, 'type'=>'Coding', 'path'=>'Note.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/note-type'}},
|
98
|
+
'text' => {'type'=>'string', 'path'=>'Note.text', 'min'=>0, 'max'=>1}
|
99
|
+
}
|
100
|
+
|
101
|
+
attr_accessor :id # 0-1 id
|
102
|
+
attr_accessor :extension # 0-* [ Extension ]
|
103
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
104
|
+
attr_accessor :type # 0-1 Coding
|
105
|
+
attr_accessor :text # 0-1 string
|
106
|
+
end
|
107
|
+
|
108
|
+
attr_accessor :id # 0-1 id
|
109
|
+
attr_accessor :meta # 0-1 Meta
|
110
|
+
attr_accessor :implicitRules # 0-1 uri
|
111
|
+
attr_accessor :language # 0-1 code
|
112
|
+
attr_accessor :text # 0-1 Narrative
|
113
|
+
attr_accessor :contained # 0-* [ Resource ]
|
114
|
+
attr_accessor :extension # 0-* [ Extension ]
|
115
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
116
|
+
attr_accessor :identifier # 0-* [ Identifier ]
|
117
|
+
attr_accessor :requestIdentifier # 0-1 Identifier
|
118
|
+
attr_accessor :requestReference # 0-1 Reference(ProcessRequest)
|
119
|
+
attr_accessor :outcome # 0-1 code
|
120
|
+
attr_accessor :disposition # 0-1 string
|
121
|
+
attr_accessor :ruleset # 0-1 Coding
|
122
|
+
attr_accessor :originalRuleset # 0-1 Coding
|
123
|
+
attr_accessor :created # 0-1 dateTime
|
124
|
+
attr_accessor :period # 0-1 Period
|
125
|
+
attr_accessor :organizationIdentifier # 0-1 Identifier
|
126
|
+
attr_accessor :organizationReference # 0-1 Reference(Organization)
|
127
|
+
attr_accessor :requestProviderIdentifier # 0-1 Identifier
|
128
|
+
attr_accessor :requestProviderReference # 0-1 Reference(Practitioner)
|
129
|
+
attr_accessor :requestOrganizationIdentifier # 0-1 Identifier
|
130
|
+
attr_accessor :requestOrganizationReference # 0-1 Reference(Organization)
|
131
|
+
attr_accessor :detail # 0-* [ PaymentReconciliation::Detail ]
|
132
|
+
attr_accessor :form # 0-1 Coding
|
133
|
+
attr_accessor :total # 1-1 Quantity
|
134
|
+
attr_accessor :note # 0-* [ PaymentReconciliation::Note ]
|
135
|
+
|
136
|
+
def resourceType
|
137
|
+
'PaymentReconciliation'
|
138
|
+
end
|
139
|
+
end
|
140
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
module FHIR
|
2
|
+
class Person < FHIR::Model
|
3
|
+
include FHIR::Hashable
|
4
|
+
include FHIR::Json
|
5
|
+
include FHIR::Xml
|
6
|
+
|
7
|
+
SEARCH_PARAMS = ["address", "address-city", "address-country", "address-postalcode", "address-state", "address-use", "birthdate", "email", "gender", "identifier", "link", "name", "organization", "patient", "phone", "phonetic", "practitioner", "relatedperson", "telecom"]
|
8
|
+
METADATA = {
|
9
|
+
'id' => {'type'=>'id', 'path'=>'Person.id', 'min'=>0, 'max'=>1},
|
10
|
+
'meta' => {'type'=>'Meta', 'path'=>'Person.meta', 'min'=>0, 'max'=>1},
|
11
|
+
'implicitRules' => {'type'=>'uri', 'path'=>'Person.implicitRules', 'min'=>0, 'max'=>1},
|
12
|
+
'language' => {'type'=>'code', 'path'=>'Person.language', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://tools.ietf.org/html/bcp47'}},
|
13
|
+
'text' => {'type'=>'Narrative', 'path'=>'Person.text', 'min'=>0, 'max'=>1},
|
14
|
+
'contained' => {'type'=>'Resource', 'path'=>'Person.contained', 'min'=>0, 'max'=>Float::INFINITY},
|
15
|
+
'extension' => {'type'=>'Extension', 'path'=>'Person.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
16
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Person.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
17
|
+
'identifier' => {'type'=>'Identifier', 'path'=>'Person.identifier', 'min'=>0, 'max'=>Float::INFINITY},
|
18
|
+
'name' => {'type'=>'HumanName', 'path'=>'Person.name', 'min'=>0, 'max'=>Float::INFINITY},
|
19
|
+
'telecom' => {'type'=>'ContactPoint', 'path'=>'Person.telecom', 'min'=>0, 'max'=>Float::INFINITY},
|
20
|
+
'gender' => {'valid_codes'=>{'http://hl7.org/fhir/administrative-gender'=>['male', 'female', 'other', 'unknown']}, 'type'=>'code', 'path'=>'Person.gender', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/administrative-gender'}},
|
21
|
+
'birthDate' => {'type'=>'date', 'path'=>'Person.birthDate', 'min'=>0, 'max'=>1},
|
22
|
+
'address' => {'type'=>'Address', 'path'=>'Person.address', 'min'=>0, 'max'=>Float::INFINITY},
|
23
|
+
'photo' => {'type'=>'Attachment', 'path'=>'Person.photo', 'min'=>0, 'max'=>1},
|
24
|
+
'managingOrganization' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Organization'], 'type'=>'Reference', 'path'=>'Person.managingOrganization', 'min'=>0, 'max'=>1},
|
25
|
+
'active' => {'type'=>'boolean', 'path'=>'Person.active', 'min'=>0, 'max'=>1},
|
26
|
+
'link' => {'type'=>'Person::Link', 'path'=>'Person.link', 'min'=>0, 'max'=>Float::INFINITY}
|
27
|
+
}
|
28
|
+
|
29
|
+
class Link < FHIR::Model
|
30
|
+
include FHIR::Hashable
|
31
|
+
include FHIR::Json
|
32
|
+
include FHIR::Xml
|
33
|
+
|
34
|
+
METADATA = {
|
35
|
+
'id' => {'type'=>'id', 'path'=>'Link.id', 'min'=>0, 'max'=>1},
|
36
|
+
'extension' => {'type'=>'Extension', 'path'=>'Link.extension', 'min'=>0, 'max'=>Float::INFINITY},
|
37
|
+
'modifierExtension' => {'type'=>'Extension', 'path'=>'Link.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
|
38
|
+
'target' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Patient', 'http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/RelatedPerson', 'http://hl7.org/fhir/StructureDefinition/Person'], 'type'=>'Reference', 'path'=>'Link.target', 'min'=>1, 'max'=>1},
|
39
|
+
'assurance' => {'valid_codes'=>{'http://hl7.org/fhir/identity-assuranceLevel'=>['level1', 'level2', 'level3', 'level4']}, 'type'=>'code', 'path'=>'Link.assurance', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/identity-assuranceLevel'}}
|
40
|
+
}
|
41
|
+
|
42
|
+
attr_accessor :id # 0-1 id
|
43
|
+
attr_accessor :extension # 0-* [ Extension ]
|
44
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
45
|
+
attr_accessor :target # 1-1 Reference(Patient|Practitioner|RelatedPerson|Person)
|
46
|
+
attr_accessor :assurance # 0-1 code
|
47
|
+
end
|
48
|
+
|
49
|
+
attr_accessor :id # 0-1 id
|
50
|
+
attr_accessor :meta # 0-1 Meta
|
51
|
+
attr_accessor :implicitRules # 0-1 uri
|
52
|
+
attr_accessor :language # 0-1 code
|
53
|
+
attr_accessor :text # 0-1 Narrative
|
54
|
+
attr_accessor :contained # 0-* [ Resource ]
|
55
|
+
attr_accessor :extension # 0-* [ Extension ]
|
56
|
+
attr_accessor :modifierExtension # 0-* [ Extension ]
|
57
|
+
attr_accessor :identifier # 0-* [ Identifier ]
|
58
|
+
attr_accessor :name # 0-* [ HumanName ]
|
59
|
+
attr_accessor :telecom # 0-* [ ContactPoint ]
|
60
|
+
attr_accessor :gender # 0-1 code
|
61
|
+
attr_accessor :birthDate # 0-1 date
|
62
|
+
attr_accessor :address # 0-* [ Address ]
|
63
|
+
attr_accessor :photo # 0-1 Attachment
|
64
|
+
attr_accessor :managingOrganization # 0-1 Reference(Organization)
|
65
|
+
attr_accessor :active # 0-1 boolean
|
66
|
+
attr_accessor :link # 0-* [ Person::Link ]
|
67
|
+
|
68
|
+
def resourceType
|
69
|
+
'Person'
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|