Class: FHIR::PlanDefinition::Action

Inherits:
Model
  • Object
show all
Includes:
Hashable, Json, Xml
Defined in:
lib/fhir_models/fhir/resources/PlanDefinition.rb

Defined Under Namespace

Classes: Condition, DynamicValue, Participant, RelatedAction

Constant Summary collapse

MULTIPLE_TYPES =
{
  'subject' => ['CodeableConcept', 'Reference'],
  'timing' => ['dateTime', 'Age', 'Period', 'Duration', 'Range', 'Timing'],
  'definition' => ['canonical', 'uri']
}
METADATA =
{
  'id' => {'type'=>'string', 'path'=>'Action.id', 'min'=>0, 'max'=>1},
  'extension' => {'type'=>'Extension', 'path'=>'Action.extension', 'min'=>0, 'max'=>Float::INFINITY},
  'modifierExtension' => {'type'=>'Extension', 'path'=>'Action.modifierExtension', 'min'=>0, 'max'=>Float::INFINITY},
  'prefix' => {'type'=>'string', 'path'=>'Action.prefix', 'min'=>0, 'max'=>1},
  'title' => {'type'=>'string', 'path'=>'Action.title', 'min'=>0, 'max'=>1},
  'description' => {'type'=>'string', 'path'=>'Action.description', 'min'=>0, 'max'=>1},
  'textEquivalent' => {'type'=>'string', 'path'=>'Action.textEquivalent', 'min'=>0, 'max'=>1},
  'priority' => {'valid_codes'=>{'http://hl7.org/fhir/request-priority'=>['routine', 'urgent', 'asap', 'stat']}, 'type'=>'code', 'path'=>'Action.priority', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/request-priority|4.0.0'}},
  'code' => {'type'=>'CodeableConcept', 'path'=>'Action.code', 'min'=>0, 'max'=>Float::INFINITY},
  'reason' => {'type'=>'CodeableConcept', 'path'=>'Action.reason', 'min'=>0, 'max'=>Float::INFINITY},
  'documentation' => {'type'=>'RelatedArtifact', 'path'=>'Action.documentation', 'min'=>0, 'max'=>Float::INFINITY},
  'goalId' => {'type'=>'id', 'path'=>'Action.goalId', 'min'=>0, 'max'=>Float::INFINITY},
  'subjectCodeableConcept' => {'valid_codes'=>{'http://hl7.org/fhir/resource-types'=>['Patient', 'Practitioner', 'Organization', 'Location', 'Device', 'Account', 'ActivityDefinition', 'AdverseEvent', 'AllergyIntolerance', 'Appointment', 'AppointmentResponse', 'AuditEvent', 'Basic', 'Binary', 'BiologicallyDerivedProduct', 'BodyStructure', 'Bundle', 'CapabilityStatement', 'CarePlan', 'CareTeam', 'CatalogEntry', 'ChargeItem', 'ChargeItemDefinition', 'Claim', 'ClaimResponse', 'ClinicalImpression', 'CodeSystem', 'Communication', 'CommunicationRequest', 'CompartmentDefinition', 'Composition', 'ConceptMap', 'Condition', 'Consent', 'Contract', 'Coverage', 'CoverageEligibilityRequest', 'CoverageEligibilityResponse', 'DetectedIssue', 'DeviceDefinition', 'DeviceMetric', 'DeviceRequest', 'DeviceUseStatement', 'DiagnosticReport', 'DocumentManifest', 'DocumentReference', 'DomainResource', 'EffectEvidenceSynthesis', 'Encounter', 'Endpoint', 'EnrollmentRequest', 'EnrollmentResponse', 'EpisodeOfCare', 'EventDefinition', 'Evidence', 'EvidenceVariable', 'ExampleScenario', 'ExplanationOfBenefit', 'FamilyMemberHistory', 'Flag', 'Goal', 'GraphDefinition', 'Group', 'GuidanceResponse', 'HealthcareService', 'ImagingStudy', 'Immunization', 'ImmunizationEvaluation', 'ImmunizationRecommendation', 'ImplementationGuide', 'InsurancePlan', 'Invoice', 'Library', 'Linkage', 'List', 'Measure', 'MeasureReport', 'Media', 'Medication', 'MedicationAdministration', 'MedicationDispense', 'MedicationKnowledge', 'MedicationRequest', 'MedicationStatement', 'MedicinalProduct', 'MedicinalProductAuthorization', 'MedicinalProductContraindication', 'MedicinalProductIndication', 'MedicinalProductIngredient', 'MedicinalProductInteraction', 'MedicinalProductManufactured', 'MedicinalProductPackaged', 'MedicinalProductPharmaceutical', 'MedicinalProductUndesirableEffect', 'MessageDefinition', 'MessageHeader', 'MolecularSequence', 'NamingSystem', 'NutritionOrder', 'Observation', 'ObservationDefinition', 'OperationDefinition', 'OperationOutcome', 'OrganizationAffiliation', 'Parameters', 'PaymentNotice', 'PaymentReconciliation', 'Person', 'PlanDefinition', 'PractitionerRole', 'Procedure', 'Provenance', 'Questionnaire', 'QuestionnaireResponse', 'RelatedPerson', 'RequestGroup', 'ResearchDefinition', 'ResearchElementDefinition', 'ResearchStudy', 'ResearchSubject', 'Resource', 'RiskAssessment', 'RiskEvidenceSynthesis', 'Schedule', 'SearchParameter', 'ServiceRequest', 'Slot', 'Specimen', 'SpecimenDefinition', 'StructureDefinition', 'StructureMap', 'Subscription', 'Substance', 'SubstanceNucleicAcid', 'SubstancePolymer', 'SubstanceProtein', 'SubstanceReferenceInformation', 'SubstanceSourceMaterial', 'SubstanceSpecification', 'SupplyDelivery', 'SupplyRequest', 'Task', 'TerminologyCapabilities', 'TestReport', 'TestScript', 'ValueSet', 'VerificationResult', 'VisionPrescription']}, 'type'=>'CodeableConcept', 'path'=>'Action.subject[x]', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/subject-type'}},
  'subjectReference' => {'type_profiles'=>['http://hl7.org/fhir/StructureDefinition/Group'], 'type'=>'Reference', 'path'=>'Action.subject[x]', 'min'=>0, 'max'=>1},
  'trigger' => {'type'=>'TriggerDefinition', 'path'=>'Action.trigger', 'min'=>0, 'max'=>Float::INFINITY},
  'condition' => {'type'=>'PlanDefinition::Action::Condition', 'path'=>'Action.condition', 'min'=>0, 'max'=>Float::INFINITY},
  'input' => {'type'=>'DataRequirement', 'path'=>'Action.input', 'min'=>0, 'max'=>Float::INFINITY},
  'output' => {'type'=>'DataRequirement', 'path'=>'Action.output', 'min'=>0, 'max'=>Float::INFINITY},
  'relatedAction' => {'type'=>'PlanDefinition::Action::RelatedAction', 'path'=>'Action.relatedAction', 'min'=>0, 'max'=>Float::INFINITY},
  'timingDateTime' => {'type'=>'dateTime', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'timingAge' => {'type'=>'Age', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'timingPeriod' => {'type'=>'Period', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'timingDuration' => {'type'=>'Duration', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'timingRange' => {'type'=>'Range', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'timingTiming' => {'type'=>'Timing', 'path'=>'Action.timing[x]', 'min'=>0, 'max'=>1},
  'participant' => {'type'=>'PlanDefinition::Action::Participant', 'path'=>'Action.participant', 'min'=>0, 'max'=>Float::INFINITY},
  'type' => {'valid_codes'=>{'http://terminology.hl7.org/CodeSystem/action-type'=>['create', 'update', 'remove', 'fire-event']}, 'type'=>'CodeableConcept', 'path'=>'Action.type', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'extensible', 'uri'=>'http://hl7.org/fhir/ValueSet/action-type'}},
  'groupingBehavior' => {'valid_codes'=>{'http://hl7.org/fhir/action-grouping-behavior'=>['visual-group', 'logical-group', 'sentence-group']}, 'type'=>'code', 'path'=>'Action.groupingBehavior', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/action-grouping-behavior|4.0.0'}},
  'selectionBehavior' => {'valid_codes'=>{'http://hl7.org/fhir/action-selection-behavior'=>['any', 'all', 'all-or-none', 'exactly-one', 'at-most-one', 'one-or-more']}, 'type'=>'code', 'path'=>'Action.selectionBehavior', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/action-selection-behavior|4.0.0'}},
  'requiredBehavior' => {'valid_codes'=>{'http://hl7.org/fhir/action-required-behavior'=>['must', 'could', 'must-unless-documented']}, 'type'=>'code', 'path'=>'Action.requiredBehavior', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/action-required-behavior|4.0.0'}},
  'precheckBehavior' => {'valid_codes'=>{'http://hl7.org/fhir/action-precheck-behavior'=>['yes', 'no']}, 'type'=>'code', 'path'=>'Action.precheckBehavior', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/action-precheck-behavior|4.0.0'}},
  'cardinalityBehavior' => {'valid_codes'=>{'http://hl7.org/fhir/action-cardinality-behavior'=>['single', 'multiple']}, 'type'=>'code', 'path'=>'Action.cardinalityBehavior', 'min'=>0, 'max'=>1, 'binding'=>{'strength'=>'required', 'uri'=>'http://hl7.org/fhir/ValueSet/action-cardinality-behavior|4.0.0'}},
  'definitionCanonical' => {'type'=>'canonical', 'path'=>'Action.definition[x]', 'min'=>0, 'max'=>1},
  'definitionUri' => {'type'=>'uri', 'path'=>'Action.definition[x]', 'min'=>0, 'max'=>1},
  'transform' => {'type'=>'canonical', 'path'=>'Action.transform', 'min'=>0, 'max'=>1},
  'dynamicValue' => {'type'=>'PlanDefinition::Action::DynamicValue', 'path'=>'Action.dynamicValue', 'min'=>0, 'max'=>Float::INFINITY},
  'action' => {'type'=>'PlanDefinition::Action', 'path'=>'Action.action', 'min'=>0, 'max'=>Float::INFINITY}
}

Instance Attribute Summary collapse

Method Summary

Methods included from Xml

from_xml, #to_xml, valid?, validate

Methods included from Deprecate

#deprecate

Methods included from Json

from_json, #to_json

Methods included from Hashable

#from_hash, #to_hash

Methods inherited from Model

#==, #attribute_mismatch, #compare_attribute, #equals?, #hash, #initialize, #method_missing, #mismatch, #primitive?, #to_reference, #valid?, #validate, #validate_profile

Constructor Details

This class inherits a constructor from FHIR::Model

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class FHIR::Model

Instance Attribute Details

#actionObject

0-* [ PlanDefinition::Action ]



286
287
288
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 286

def action
  @action
end

#cardinalityBehaviorObject

0-1 code



281
282
283
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 281

def cardinalityBehavior
  @cardinalityBehavior
end

#codeObject

0-* [ CodeableConcept ]



258
259
260
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 258

def code
  @code
end

#conditionObject

0-* [ PlanDefinition::Action::Condition ]



265
266
267
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 265

def condition
  @condition
end

#definitionCanonicalObject

0-1 canonical



282
283
284
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 282

def definitionCanonical
  @definitionCanonical
end

#definitionUriObject

0-1 uri



283
284
285
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 283

def definitionUri
  @definitionUri
end

#descriptionObject

0-1 string



255
256
257
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 255

def description
  @description
end

#documentationObject

0-* [ RelatedArtifact ]



260
261
262
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 260

def documentation
  @documentation
end

#dynamicValueObject

0-* [ PlanDefinition::Action::DynamicValue ]



285
286
287
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 285

def dynamicValue
  @dynamicValue
end

#extensionObject

0-* [ Extension ]



251
252
253
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 251

def extension
  @extension
end

#goalIdObject

0-* [ id ]



261
262
263
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 261

def goalId
  @goalId
end

#groupingBehaviorObject

0-1 code



277
278
279
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 277

def groupingBehavior
  @groupingBehavior
end

#idObject

0-1 string



250
251
252
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 250

def id
  @id
end

#inputObject

0-* [ DataRequirement ]



266
267
268
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 266

def input
  @input
end

#modifierExtensionObject

0-* [ Extension ]



252
253
254
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 252

def modifierExtension
  @modifierExtension
end

#outputObject

0-* [ DataRequirement ]



267
268
269
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 267

def output
  @output
end

#participantObject

0-* [ PlanDefinition::Action::Participant ]



275
276
277
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 275

def participant
  @participant
end

#precheckBehaviorObject

0-1 code



280
281
282
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 280

def precheckBehavior
  @precheckBehavior
end

#prefixObject

0-1 string



253
254
255
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 253

def prefix
  @prefix
end

#priorityObject

0-1 code



257
258
259
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 257

def priority
  @priority
end

#reasonObject

0-* [ CodeableConcept ]



259
260
261
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 259

def reason
  @reason
end

#relatedActionObject

0-* [ PlanDefinition::Action::RelatedAction ]



268
269
270
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 268

def relatedAction
  @relatedAction
end

#requiredBehaviorObject

0-1 code



279
280
281
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 279

def requiredBehavior
  @requiredBehavior
end

#selectionBehaviorObject

0-1 code



278
279
280
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 278

def selectionBehavior
  @selectionBehavior
end

#subjectCodeableConceptObject

0-1 CodeableConcept



262
263
264
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 262

def subjectCodeableConcept
  @subjectCodeableConcept
end

#subjectReferenceObject

0-1 Reference(Group)



263
264
265
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 263

def subjectReference
  @subjectReference
end

#textEquivalentObject

0-1 string



256
257
258
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 256

def textEquivalent
  @textEquivalent
end

#timingAgeObject

0-1 Age



270
271
272
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 270

def timingAge
  @timingAge
end

#timingDateTimeObject

0-1 dateTime



269
270
271
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 269

def timingDateTime
  @timingDateTime
end

#timingDurationObject

0-1 Duration



272
273
274
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 272

def timingDuration
  @timingDuration
end

#timingPeriodObject

0-1 Period



271
272
273
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 271

def timingPeriod
  @timingPeriod
end

#timingRangeObject

0-1 Range



273
274
275
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 273

def timingRange
  @timingRange
end

#timingTimingObject

0-1 Timing



274
275
276
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 274

def timingTiming
  @timingTiming
end

#titleObject

0-1 string



254
255
256
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 254

def title
  @title
end

#transformObject

0-1 canonical



284
285
286
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 284

def transform
  @transform
end

#triggerObject

0-* [ TriggerDefinition ]



264
265
266
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 264

def trigger
  @trigger
end

#typeObject

0-1 CodeableConcept



276
277
278
# File 'lib/fhir_models/fhir/resources/PlanDefinition.rb', line 276

def type
  @type
end