001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.valueset.AnimalSpeciesEnum; 042import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 043import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 044import ca.uhn.fhir.model.dstu2.resource.Appointment; 045import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 048import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 049import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 057import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 058import ca.uhn.fhir.model.dstu2.resource.BodySite; 059import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 060import ca.uhn.fhir.model.dstu2.resource.CarePlan; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityCategoryEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 063import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 064import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 065import ca.uhn.fhir.model.dstu2.resource.Claim; 066import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 067import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 068import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 069import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 070import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 071import ca.uhn.fhir.model.dstu2.composite.CodingDt; 072import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 073import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 074import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 075import ca.uhn.fhir.model.dstu2.resource.Composition; 076import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 077import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 078import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 079import ca.uhn.fhir.model.dstu2.resource.Condition; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 082import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 083import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConditionsCodesEnum; 085import ca.uhn.fhir.model.dstu2.resource.Conformance; 086import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 087import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 088import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 089import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 090import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 091import ca.uhn.fhir.model.dstu2.resource.Contract; 092import ca.uhn.fhir.model.dstu2.valueset.ContractActionCodesEnum; 093import ca.uhn.fhir.model.dstu2.valueset.ContractActorRoleCodesEnum; 094import ca.uhn.fhir.model.dstu2.valueset.ContractSubtypeCodesEnum; 095import ca.uhn.fhir.model.dstu2.valueset.ContractTermTypeCodesEnum; 096import ca.uhn.fhir.model.dstu2.valueset.ContractTypeCodesEnum; 097import ca.uhn.fhir.model.dstu2.resource.Coverage; 098import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 101import ca.uhn.fhir.model.dstu2.resource.Device; 102import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 103import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 105import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 106import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 108import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 109import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 110import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 111import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 112import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 113import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 114import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 115import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 116import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 117import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 118import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 119import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 120import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 121import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 122import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 123import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 124import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 125import ca.uhn.fhir.model.dstu2.resource.Encounter; 126import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 127import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 128import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 129import ca.uhn.fhir.model.dstu2.valueset.EncounterTypeEnum; 130import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 131import ca.uhn.fhir.model.dstu2.valueset.EnteralFormulaTypeCodesEnum; 132import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 133import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 134import ca.uhn.fhir.model.dstu2.valueset.ExceptionCodesEnum; 135import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 136import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 137import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 138import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 139import ca.uhn.fhir.model.dstu2.valueset.FlagCategoryCodesEnum; 140import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 141import ca.uhn.fhir.model.dstu2.valueset.FluidConsistencyTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.resource.Goal; 143import ca.uhn.fhir.model.dstu2.valueset.GoalCategoryEnum; 144import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 145import ca.uhn.fhir.model.dstu2.valueset.GoalStartEventEnum; 146import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 147import ca.uhn.fhir.model.dstu2.valueset.GoalStatusReasonEnum; 148import ca.uhn.fhir.model.dstu2.resource.Group; 149import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 150import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 152import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 153import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 154import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 155import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 156import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 157import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 158import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 159import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 160import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 161import ca.uhn.fhir.model.dstu2.resource.Immunization; 162import ca.uhn.fhir.model.dstu2.valueset.ImmunizationReasonCodesEnum; 163import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationDateCriterionCodesEnum; 164import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationStatusCodesEnum; 165import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRouteCodesEnum; 166import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 167import ca.uhn.fhir.model.dstu2.valueset.InterventionCodesEnum; 168import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 169import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 170import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 171import ca.uhn.fhir.model.dstu2.valueset.LateralityEnum; 172import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 175import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 176import ca.uhn.fhir.model.dstu2.resource.Location; 177import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 178import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 179import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 180import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 181import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 182import ca.uhn.fhir.model.dstu2.resource.Media; 183import ca.uhn.fhir.model.dstu2.resource.Medication; 184import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 185import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 187import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 188import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 189import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 190import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 191import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 192import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 193import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 194import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 195import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 196import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 197import ca.uhn.fhir.model.dstu2.valueset.NutrientModifierCodesEnum; 198import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 199import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 200import ca.uhn.fhir.model.dstu2.resource.Observation; 201import ca.uhn.fhir.model.dstu2.valueset.ObservationCategoryCodesEnum; 202import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 203import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 204import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 205import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 206import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 207import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 208import ca.uhn.fhir.model.dstu2.resource.Order; 209import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 210import ca.uhn.fhir.model.dstu2.resource.Organization; 211import ca.uhn.fhir.model.dstu2.valueset.OrganizationTypeEnum; 212import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 213import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 214import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 216import ca.uhn.fhir.model.dstu2.resource.Patient; 217import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 218import ca.uhn.fhir.model.dstu2.valueset.PaymentStatusCodesEnum; 219import ca.uhn.fhir.model.dstu2.valueset.PaymentTypeCodesEnum; 220import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 221import ca.uhn.fhir.model.dstu2.resource.Person; 222import ca.uhn.fhir.model.dstu2.resource.Practitioner; 223import ca.uhn.fhir.model.dstu2.valueset.PractitionerRoleEnum; 224import ca.uhn.fhir.model.dstu2.valueset.PractitionerSpecialtyEnum; 225import ca.uhn.fhir.model.dstu2.valueset.PriorityCodesEnum; 226import ca.uhn.fhir.model.dstu2.resource.Procedure; 227import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 228import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 229import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 230import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 232import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 233import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 234import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 235import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 236import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 237import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 238import ca.uhn.fhir.model.dstu2.composite.RangeDt; 239import ca.uhn.fhir.model.dstu2.composite.RatioDt; 240import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 241import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 242import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 243import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 244import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 245import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 247import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 249import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 250import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 251import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 252import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 253import ca.uhn.fhir.model.dstu2.resource.Schedule; 254import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 255import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 256import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 257import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 258import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 259import ca.uhn.fhir.model.dstu2.resource.Slot; 260import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 261import ca.uhn.fhir.model.dstu2.resource.Specimen; 262import ca.uhn.fhir.model.dstu2.valueset.SpecimenCollectionMethodEnum; 263import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 264import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 265import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 266import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 267import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 268import ca.uhn.fhir.model.dstu2.valueset.SubscriptionTagEnum; 269import ca.uhn.fhir.model.dstu2.resource.Substance; 270import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 271import ca.uhn.fhir.model.dstu2.valueset.SupplementTypeCodesEnum; 272import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 273import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 274import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestReasonEnum; 275import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 276import ca.uhn.fhir.model.dstu2.valueset.SurfaceCodesEnum; 277import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 278import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 279import ca.uhn.fhir.model.dstu2.valueset.TextureModifiedFoodTypeCodesEnum; 280import ca.uhn.fhir.model.dstu2.valueset.TextureModifierCodesEnum; 281import ca.uhn.fhir.model.dstu2.composite.TimingDt; 282import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 283import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 284import ca.uhn.fhir.model.dstu2.valueset.UDICodesEnum; 285import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 286import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 287import ca.uhn.fhir.model.dstu2.resource.ValueSet; 288import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 289import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 290import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 291import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 292import ca.uhn.fhir.model.api.IResource; 293import ca.uhn.fhir.model.dstu2.composite.AgeDt; 294import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 295import ca.uhn.fhir.model.dstu2.composite.DurationDt; 296import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 297import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 298import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 299import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 300import ca.uhn.fhir.model.primitive.Base64BinaryDt; 301import ca.uhn.fhir.model.primitive.BooleanDt; 302import ca.uhn.fhir.model.primitive.BoundCodeDt; 303import ca.uhn.fhir.model.primitive.CodeDt; 304import ca.uhn.fhir.model.primitive.DateDt; 305import ca.uhn.fhir.model.primitive.DateTimeDt; 306import ca.uhn.fhir.model.primitive.DecimalDt; 307import ca.uhn.fhir.model.primitive.IdDt; 308import ca.uhn.fhir.model.primitive.InstantDt; 309import ca.uhn.fhir.model.primitive.IntegerDt; 310import ca.uhn.fhir.model.primitive.OidDt; 311import ca.uhn.fhir.model.primitive.PositiveIntDt; 312import ca.uhn.fhir.model.primitive.StringDt; 313import ca.uhn.fhir.model.primitive.TimeDt; 314import ca.uhn.fhir.model.primitive.UnsignedIntDt; 315import ca.uhn.fhir.model.primitive.UriDt; 316 317 318/** 319 * HAPI/FHIR <b>MedicationAdministration</b> Resource 320 * (clinical.medication) 321 * 322 * <p> 323 * <b>Definition:</b> 324 * Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner 325 * </p> 326 * 327 * <p> 328 * <b>Requirements:</b> 329 * 330 * </p> 331 * 332 * <p> 333 * <b>Profile Definition:</b> 334 * <a href="http://hl7.org/fhir/profiles/MedicationAdministration">http://hl7.org/fhir/profiles/MedicationAdministration</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="MedicationAdministration", profile="http://hl7.org/fhir/profiles/MedicationAdministration", id="medicationadministration") 339public class MedicationAdministration extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>device</b> 344 * <p> 345 * Description: <b>Return administrations with this administration device identity</b><br> 346 * Type: <b>reference</b><br> 347 * Path: <b>MedicationAdministration.device</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="device", path="MedicationAdministration.device", description="Return administrations with this administration device identity", type="reference" ) 351 public static final String SP_DEVICE = "device"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>device</b> 355 * <p> 356 * Description: <b>Return administrations with this administration device identity</b><br> 357 * Type: <b>reference</b><br> 358 * Path: <b>MedicationAdministration.device</b><br> 359 * </p> 360 */ 361 public static final ReferenceClientParam DEVICE = new ReferenceClientParam(SP_DEVICE); 362 363 /** 364 * Search parameter constant for <b>encounter</b> 365 * <p> 366 * Description: <b>Return administrations that share this encounter</b><br> 367 * Type: <b>reference</b><br> 368 * Path: <b>MedicationAdministration.encounter</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="encounter", path="MedicationAdministration.encounter", description="Return administrations that share this encounter", type="reference" ) 372 public static final String SP_ENCOUNTER = "encounter"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 376 * <p> 377 * Description: <b>Return administrations that share this encounter</b><br> 378 * Type: <b>reference</b><br> 379 * Path: <b>MedicationAdministration.encounter</b><br> 380 * </p> 381 */ 382 public static final ReferenceClientParam ENCOUNTER = new ReferenceClientParam(SP_ENCOUNTER); 383 384 /** 385 * Search parameter constant for <b>identifier</b> 386 * <p> 387 * Description: <b>Return administrations with this external identifier</b><br> 388 * Type: <b>token</b><br> 389 * Path: <b>MedicationAdministration.identifier</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="identifier", path="MedicationAdministration.identifier", description="Return administrations with this external identifier", type="token" ) 393 public static final String SP_IDENTIFIER = "identifier"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 397 * <p> 398 * Description: <b>Return administrations with this external identifier</b><br> 399 * Type: <b>token</b><br> 400 * Path: <b>MedicationAdministration.identifier</b><br> 401 * </p> 402 */ 403 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 404 405 /** 406 * Search parameter constant for <b>medication</b> 407 * <p> 408 * Description: <b>Return administrations of this medication resource</b><br> 409 * Type: <b>reference</b><br> 410 * Path: <b>MedicationAdministration.medicationReference</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="medication", path="MedicationAdministration.medicationReference", description="Return administrations of this medication resource", type="reference" ) 414 public static final String SP_MEDICATION = "medication"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>medication</b> 418 * <p> 419 * Description: <b>Return administrations of this medication resource</b><br> 420 * Type: <b>reference</b><br> 421 * Path: <b>MedicationAdministration.medicationReference</b><br> 422 * </p> 423 */ 424 public static final ReferenceClientParam MEDICATION = new ReferenceClientParam(SP_MEDICATION); 425 426 /** 427 * Search parameter constant for <b>code</b> 428 * <p> 429 * Description: <b>Return administrations of this medication code</b><br> 430 * Type: <b>token</b><br> 431 * Path: <b>MedicationAdministration.medicationCodeableConcept</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="code", path="MedicationAdministration.medicationCodeableConcept", description="Return administrations of this medication code", type="token" ) 435 public static final String SP_CODE = "code"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>code</b> 439 * <p> 440 * Description: <b>Return administrations of this medication code</b><br> 441 * Type: <b>token</b><br> 442 * Path: <b>MedicationAdministration.medicationCodeableConcept</b><br> 443 * </p> 444 */ 445 public static final TokenClientParam CODE = new TokenClientParam(SP_CODE); 446 447 /** 448 * Search parameter constant for <b>notgiven</b> 449 * <p> 450 * Description: <b>Administrations that were not made</b><br> 451 * Type: <b>token</b><br> 452 * Path: <b>MedicationAdministration.wasNotGiven</b><br> 453 * </p> 454 */ 455 @SearchParamDefinition(name="notgiven", path="MedicationAdministration.wasNotGiven", description="Administrations that were not made", type="token" ) 456 public static final String SP_NOTGIVEN = "notgiven"; 457 458 /** 459 * <b>Fluent Client</b> search parameter constant for <b>notgiven</b> 460 * <p> 461 * Description: <b>Administrations that were not made</b><br> 462 * Type: <b>token</b><br> 463 * Path: <b>MedicationAdministration.wasNotGiven</b><br> 464 * </p> 465 */ 466 public static final TokenClientParam NOTGIVEN = new TokenClientParam(SP_NOTGIVEN); 467 468 /** 469 * Search parameter constant for <b>patient</b> 470 * <p> 471 * Description: <b>The identity of a patient to list administrations for</b><br> 472 * Type: <b>reference</b><br> 473 * Path: <b>MedicationAdministration.patient</b><br> 474 * </p> 475 */ 476 @SearchParamDefinition(name="patient", path="MedicationAdministration.patient", description="The identity of a patient to list administrations for", type="reference" ) 477 public static final String SP_PATIENT = "patient"; 478 479 /** 480 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 481 * <p> 482 * Description: <b>The identity of a patient to list administrations for</b><br> 483 * Type: <b>reference</b><br> 484 * Path: <b>MedicationAdministration.patient</b><br> 485 * </p> 486 */ 487 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 488 489 /** 490 * Search parameter constant for <b>prescription</b> 491 * <p> 492 * Description: <b>The identity of a prescription to list administrations from</b><br> 493 * Type: <b>reference</b><br> 494 * Path: <b>MedicationAdministration.prescription</b><br> 495 * </p> 496 */ 497 @SearchParamDefinition(name="prescription", path="MedicationAdministration.prescription", description="The identity of a prescription to list administrations from", type="reference" ) 498 public static final String SP_PRESCRIPTION = "prescription"; 499 500 /** 501 * <b>Fluent Client</b> search parameter constant for <b>prescription</b> 502 * <p> 503 * Description: <b>The identity of a prescription to list administrations from</b><br> 504 * Type: <b>reference</b><br> 505 * Path: <b>MedicationAdministration.prescription</b><br> 506 * </p> 507 */ 508 public static final ReferenceClientParam PRESCRIPTION = new ReferenceClientParam(SP_PRESCRIPTION); 509 510 /** 511 * Search parameter constant for <b>status</b> 512 * <p> 513 * Description: <b>MedicationAdministration event status (for example one of active/paused/completed/nullified)</b><br> 514 * Type: <b>token</b><br> 515 * Path: <b>MedicationAdministration.status</b><br> 516 * </p> 517 */ 518 @SearchParamDefinition(name="status", path="MedicationAdministration.status", description="MedicationAdministration event status (for example one of active/paused/completed/nullified)", type="token" ) 519 public static final String SP_STATUS = "status"; 520 521 /** 522 * <b>Fluent Client</b> search parameter constant for <b>status</b> 523 * <p> 524 * Description: <b>MedicationAdministration event status (for example one of active/paused/completed/nullified)</b><br> 525 * Type: <b>token</b><br> 526 * Path: <b>MedicationAdministration.status</b><br> 527 * </p> 528 */ 529 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 530 531 /** 532 * Search parameter constant for <b>effectivetime</b> 533 * <p> 534 * Description: <b>Date administration happened (or did not happen)</b><br> 535 * Type: <b>date</b><br> 536 * Path: <b>MedicationAdministration.effectiveTime[x]</b><br> 537 * </p> 538 */ 539 @SearchParamDefinition(name="effectivetime", path="MedicationAdministration.effectiveTime[x]", description="Date administration happened (or did not happen)", type="date" ) 540 public static final String SP_EFFECTIVETIME = "effectivetime"; 541 542 /** 543 * <b>Fluent Client</b> search parameter constant for <b>effectivetime</b> 544 * <p> 545 * Description: <b>Date administration happened (or did not happen)</b><br> 546 * Type: <b>date</b><br> 547 * Path: <b>MedicationAdministration.effectiveTime[x]</b><br> 548 * </p> 549 */ 550 public static final DateClientParam EFFECTIVETIME = new DateClientParam(SP_EFFECTIVETIME); 551 552 /** 553 * Search parameter constant for <b>practitioner</b> 554 * <p> 555 * Description: <b></b><br> 556 * Type: <b>reference</b><br> 557 * Path: <b>MedicationAdministration.practitioner</b><br> 558 * </p> 559 */ 560 @SearchParamDefinition(name="practitioner", path="MedicationAdministration.practitioner", description="", type="reference" ) 561 public static final String SP_PRACTITIONER = "practitioner"; 562 563 /** 564 * <b>Fluent Client</b> search parameter constant for <b>practitioner</b> 565 * <p> 566 * Description: <b></b><br> 567 * Type: <b>reference</b><br> 568 * Path: <b>MedicationAdministration.practitioner</b><br> 569 * </p> 570 */ 571 public static final ReferenceClientParam PRACTITIONER = new ReferenceClientParam(SP_PRACTITIONER); 572 573 574 /** 575 * Constant for fluent queries to be used to add include statements. Specifies 576 * the path value of "<b>MedicationAdministration:device</b>". 577 */ 578 public static final Include INCLUDE_DEVICE = new Include("MedicationAdministration:device"); 579 580 /** 581 * Constant for fluent queries to be used to add include statements. Specifies 582 * the path value of "<b>MedicationAdministration:encounter</b>". 583 */ 584 public static final Include INCLUDE_ENCOUNTER = new Include("MedicationAdministration:encounter"); 585 586 /** 587 * Constant for fluent queries to be used to add include statements. Specifies 588 * the path value of "<b>MedicationAdministration:medication</b>". 589 */ 590 public static final Include INCLUDE_MEDICATION = new Include("MedicationAdministration:medication"); 591 592 /** 593 * Constant for fluent queries to be used to add include statements. Specifies 594 * the path value of "<b>MedicationAdministration:patient</b>". 595 */ 596 public static final Include INCLUDE_PATIENT = new Include("MedicationAdministration:patient"); 597 598 /** 599 * Constant for fluent queries to be used to add include statements. Specifies 600 * the path value of "<b>MedicationAdministration:practitioner</b>". 601 */ 602 public static final Include INCLUDE_PRACTITIONER = new Include("MedicationAdministration:practitioner"); 603 604 /** 605 * Constant for fluent queries to be used to add include statements. Specifies 606 * the path value of "<b>MedicationAdministration:prescription</b>". 607 */ 608 public static final Include INCLUDE_PRESCRIPTION = new Include("MedicationAdministration:prescription"); 609 610 611 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 612 @Description( 613 shortDefinition="id", 614 formalDefinition="External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated." 615 ) 616 private java.util.List<IdentifierDt> myIdentifier; 617 618 @Child(name="status", type=CodeDt.class, order=1, min=1, max=1, summary=false, modifier=true) 619 @Description( 620 shortDefinition="status", 621 formalDefinition="Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way." 622 ) 623 private BoundCodeDt<MedicationAdministrationStatusEnum> myStatus; 624 625 @Child(name="patient", order=2, min=1, max=1, summary=false, modifier=false, type={ 626 ca.uhn.fhir.model.dstu2.resource.Patient.class }) 627 @Description( 628 shortDefinition="who.focus", 629 formalDefinition="The person or animal receiving the medication." 630 ) 631 private ResourceReferenceDt myPatient; 632 633 @Child(name="practitioner", order=3, min=0, max=1, summary=false, modifier=false, type={ 634 ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.RelatedPerson.class }) 635 @Description( 636 shortDefinition="who.actor", 637 formalDefinition="The individual who was responsible for giving the medication to the patient." 638 ) 639 private ResourceReferenceDt myPractitioner; 640 641 @Child(name="encounter", order=4, min=0, max=1, summary=false, modifier=false, type={ 642 ca.uhn.fhir.model.dstu2.resource.Encounter.class }) 643 @Description( 644 shortDefinition="context", 645 formalDefinition="The visit, admission or other contact between patient and health care provider the medication administration was performed as part of." 646 ) 647 private ResourceReferenceDt myEncounter; 648 649 @Child(name="prescription", order=5, min=0, max=1, summary=false, modifier=false, type={ 650 ca.uhn.fhir.model.dstu2.resource.MedicationOrder.class }) 651 @Description( 652 shortDefinition="", 653 formalDefinition="The original request, instruction or authority to perform the administration." 654 ) 655 private ResourceReferenceDt myPrescription; 656 657 @Child(name="wasNotGiven", type=BooleanDt.class, order=6, min=0, max=1, summary=false, modifier=true) 658 @Description( 659 shortDefinition="", 660 formalDefinition="Set this to true if the record is saying that the medication was NOT administered." 661 ) 662 private BooleanDt myWasNotGiven; 663 664 @Child(name="reasonNotGiven", type=CodeableConceptDt.class, order=7, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 665 @Description( 666 shortDefinition="", 667 formalDefinition="A code indicating why the administration was not performed." 668 ) 669 private java.util.List<CodeableConceptDt> myReasonNotGiven; 670 671 @Child(name="reasonGiven", type=CodeableConceptDt.class, order=8, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 672 @Description( 673 shortDefinition="", 674 formalDefinition="A code indicating why the medication was given." 675 ) 676 private java.util.List<CodeableConceptDt> myReasonGiven; 677 678 @Child(name="effectiveTime", order=9, min=1, max=1, summary=false, modifier=false, type={ 679 DateTimeDt.class, PeriodDt.class }) 680 @Description( 681 shortDefinition="when.done", 682 formalDefinition="A specific date/time or interval of time during which the administration took place (or did not take place, when the 'notGiven' attribute is true). For many administrations, such as swallowing a tablet the use of dateTime is more appropriate." 683 ) 684 private IDatatype myEffectiveTime; 685 686 @Child(name="medication", order=10, min=1, max=1, summary=false, modifier=false, type={ 687 CodeableConceptDt.class, Medication.class }) 688 @Description( 689 shortDefinition="", 690 formalDefinition="Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications." 691 ) 692 private IDatatype myMedication; 693 694 @Child(name="device", order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 695 ca.uhn.fhir.model.dstu2.resource.Device.class }) 696 @Description( 697 shortDefinition="", 698 formalDefinition="The device used in administering the medication to the patient. For example, a particular infusion pump" 699 ) 700 private java.util.List<ResourceReferenceDt> myDevice; 701 702 @Child(name="note", type=StringDt.class, order=12, min=0, max=1, summary=false, modifier=false) 703 @Description( 704 shortDefinition="", 705 formalDefinition="Extra information about the medication administration that is not conveyed by the other attributes." 706 ) 707 private StringDt myNote; 708 709 @Child(name="dosage", order=13, min=0, max=1, summary=false, modifier=false) 710 @Description( 711 shortDefinition="", 712 formalDefinition="Describes the medication dosage information details e.g. dose, rate, site, route, etc." 713 ) 714 private Dosage myDosage; 715 716 717 @Override 718 public boolean isEmpty() { 719 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myStatus, myPatient, myPractitioner, myEncounter, myPrescription, myWasNotGiven, myReasonNotGiven, myReasonGiven, myEffectiveTime, myMedication, myDevice, myNote, myDosage); 720 } 721 722 @Override 723 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 724 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myStatus, myPatient, myPractitioner, myEncounter, myPrescription, myWasNotGiven, myReasonNotGiven, myReasonGiven, myEffectiveTime, myMedication, myDevice, myNote, myDosage); 725 } 726 727 /** 728 * Gets the value(s) for <b>identifier</b> (id). 729 * creating it if it does 730 * not exist. Will not return <code>null</code>. 731 * 732 * <p> 733 * <b>Definition:</b> 734 * External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. 735 * </p> 736 */ 737 public java.util.List<IdentifierDt> getIdentifier() { 738 if (myIdentifier == null) { 739 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 740 } 741 return myIdentifier; 742 } 743 744 /** 745 * Sets the value(s) for <b>identifier</b> (id) 746 * 747 * <p> 748 * <b>Definition:</b> 749 * External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. 750 * </p> 751 */ 752 public MedicationAdministration setIdentifier(java.util.List<IdentifierDt> theValue) { 753 myIdentifier = theValue; 754 return this; 755 } 756 757 758 759 /** 760 * Adds and returns a new value for <b>identifier</b> (id) 761 * 762 * <p> 763 * <b>Definition:</b> 764 * External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. 765 * </p> 766 */ 767 public IdentifierDt addIdentifier() { 768 IdentifierDt newType = new IdentifierDt(); 769 getIdentifier().add(newType); 770 return newType; 771 } 772 773 /** 774 * Adds a given new value for <b>identifier</b> (id) 775 * 776 * <p> 777 * <b>Definition:</b> 778 * External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. 779 * </p> 780 * @param theValue The identifier to add (must not be <code>null</code>) 781 */ 782 public MedicationAdministration addIdentifier(IdentifierDt theValue) { 783 if (theValue == null) { 784 throw new NullPointerException("theValue must not be null"); 785 } 786 getIdentifier().add(theValue); 787 return this; 788 } 789 790 /** 791 * Gets the first repetition for <b>identifier</b> (id), 792 * creating it if it does not already exist. 793 * 794 * <p> 795 * <b>Definition:</b> 796 * External identifier - FHIR will generate its own internal identifiers (probably URLs) which do not need to be explicitly managed by the resource. The identifier here is one that would be used by another non-FHIR system - for example an automated medication pump would provide a record each time it operated; an administration while the patient was off the ward might be made with a different system and entered after the event. Particularly important if these records have to be updated. 797 * </p> 798 */ 799 public IdentifierDt getIdentifierFirstRep() { 800 if (getIdentifier().isEmpty()) { 801 return addIdentifier(); 802 } 803 return getIdentifier().get(0); 804 } 805 806 /** 807 * Gets the value(s) for <b>status</b> (status). 808 * creating it if it does 809 * not exist. Will not return <code>null</code>. 810 * 811 * <p> 812 * <b>Definition:</b> 813 * Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way. 814 * </p> 815 */ 816 public BoundCodeDt<MedicationAdministrationStatusEnum> getStatusElement() { 817 if (myStatus == null) { 818 myStatus = new BoundCodeDt<MedicationAdministrationStatusEnum>(MedicationAdministrationStatusEnum.VALUESET_BINDER); 819 } 820 return myStatus; 821 } 822 823 824 /** 825 * Gets the value(s) for <b>status</b> (status). 826 * creating it if it does 827 * not exist. Will not return <code>null</code>. 828 * 829 * <p> 830 * <b>Definition:</b> 831 * Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way. 832 * </p> 833 */ 834 public String getStatus() { 835 return getStatusElement().getValue(); 836 } 837 838 /** 839 * Sets the value(s) for <b>status</b> (status) 840 * 841 * <p> 842 * <b>Definition:</b> 843 * Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way. 844 * </p> 845 */ 846 public MedicationAdministration setStatus(BoundCodeDt<MedicationAdministrationStatusEnum> theValue) { 847 myStatus = theValue; 848 return this; 849 } 850 851 852 853 /** 854 * Sets the value(s) for <b>status</b> (status) 855 * 856 * <p> 857 * <b>Definition:</b> 858 * Will generally be set to show that the administration has been completed. For some long running administrations such as infusions it is possible for an administration to be started but not completed or it may be paused while some other process is under way. 859 * </p> 860 */ 861 public MedicationAdministration setStatus(MedicationAdministrationStatusEnum theValue) { 862 setStatus(new BoundCodeDt<MedicationAdministrationStatusEnum>(MedicationAdministrationStatusEnum.VALUESET_BINDER, theValue)); 863 864/* 865 getStatusElement().setValueAsEnum(theValue); 866*/ 867 return this; 868 } 869 870 871 /** 872 * Gets the value(s) for <b>patient</b> (who.focus). 873 * creating it if it does 874 * not exist. Will not return <code>null</code>. 875 * 876 * <p> 877 * <b>Definition:</b> 878 * The person or animal receiving the medication. 879 * </p> 880 */ 881 public ResourceReferenceDt getPatient() { 882 if (myPatient == null) { 883 myPatient = new ResourceReferenceDt(); 884 } 885 return myPatient; 886 } 887 888 /** 889 * Sets the value(s) for <b>patient</b> (who.focus) 890 * 891 * <p> 892 * <b>Definition:</b> 893 * The person or animal receiving the medication. 894 * </p> 895 */ 896 public MedicationAdministration setPatient(ResourceReferenceDt theValue) { 897 myPatient = theValue; 898 return this; 899 } 900 901 902 903 904 /** 905 * Gets the value(s) for <b>practitioner</b> (who.actor). 906 * creating it if it does 907 * not exist. Will not return <code>null</code>. 908 * 909 * <p> 910 * <b>Definition:</b> 911 * The individual who was responsible for giving the medication to the patient. 912 * </p> 913 */ 914 public ResourceReferenceDt getPractitioner() { 915 if (myPractitioner == null) { 916 myPractitioner = new ResourceReferenceDt(); 917 } 918 return myPractitioner; 919 } 920 921 /** 922 * Sets the value(s) for <b>practitioner</b> (who.actor) 923 * 924 * <p> 925 * <b>Definition:</b> 926 * The individual who was responsible for giving the medication to the patient. 927 * </p> 928 */ 929 public MedicationAdministration setPractitioner(ResourceReferenceDt theValue) { 930 myPractitioner = theValue; 931 return this; 932 } 933 934 935 936 937 /** 938 * Gets the value(s) for <b>encounter</b> (context). 939 * creating it if it does 940 * not exist. Will not return <code>null</code>. 941 * 942 * <p> 943 * <b>Definition:</b> 944 * The visit, admission or other contact between patient and health care provider the medication administration was performed as part of. 945 * </p> 946 */ 947 public ResourceReferenceDt getEncounter() { 948 if (myEncounter == null) { 949 myEncounter = new ResourceReferenceDt(); 950 } 951 return myEncounter; 952 } 953 954 /** 955 * Sets the value(s) for <b>encounter</b> (context) 956 * 957 * <p> 958 * <b>Definition:</b> 959 * The visit, admission or other contact between patient and health care provider the medication administration was performed as part of. 960 * </p> 961 */ 962 public MedicationAdministration setEncounter(ResourceReferenceDt theValue) { 963 myEncounter = theValue; 964 return this; 965 } 966 967 968 969 970 /** 971 * Gets the value(s) for <b>prescription</b> (). 972 * creating it if it does 973 * not exist. Will not return <code>null</code>. 974 * 975 * <p> 976 * <b>Definition:</b> 977 * The original request, instruction or authority to perform the administration. 978 * </p> 979 */ 980 public ResourceReferenceDt getPrescription() { 981 if (myPrescription == null) { 982 myPrescription = new ResourceReferenceDt(); 983 } 984 return myPrescription; 985 } 986 987 /** 988 * Sets the value(s) for <b>prescription</b> () 989 * 990 * <p> 991 * <b>Definition:</b> 992 * The original request, instruction or authority to perform the administration. 993 * </p> 994 */ 995 public MedicationAdministration setPrescription(ResourceReferenceDt theValue) { 996 myPrescription = theValue; 997 return this; 998 } 999 1000 1001 1002 1003 /** 1004 * Gets the value(s) for <b>wasNotGiven</b> (). 1005 * creating it if it does 1006 * not exist. Will not return <code>null</code>. 1007 * 1008 * <p> 1009 * <b>Definition:</b> 1010 * Set this to true if the record is saying that the medication was NOT administered. 1011 * </p> 1012 */ 1013 public BooleanDt getWasNotGivenElement() { 1014 if (myWasNotGiven == null) { 1015 myWasNotGiven = new BooleanDt(); 1016 } 1017 return myWasNotGiven; 1018 } 1019 1020 1021 /** 1022 * Gets the value(s) for <b>wasNotGiven</b> (). 1023 * creating it if it does 1024 * not exist. Will not return <code>null</code>. 1025 * 1026 * <p> 1027 * <b>Definition:</b> 1028 * Set this to true if the record is saying that the medication was NOT administered. 1029 * </p> 1030 */ 1031 public Boolean getWasNotGiven() { 1032 return getWasNotGivenElement().getValue(); 1033 } 1034 1035 /** 1036 * Sets the value(s) for <b>wasNotGiven</b> () 1037 * 1038 * <p> 1039 * <b>Definition:</b> 1040 * Set this to true if the record is saying that the medication was NOT administered. 1041 * </p> 1042 */ 1043 public MedicationAdministration setWasNotGiven(BooleanDt theValue) { 1044 myWasNotGiven = theValue; 1045 return this; 1046 } 1047 1048 1049 1050 /** 1051 * Sets the value for <b>wasNotGiven</b> () 1052 * 1053 * <p> 1054 * <b>Definition:</b> 1055 * Set this to true if the record is saying that the medication was NOT administered. 1056 * </p> 1057 */ 1058 public MedicationAdministration setWasNotGiven( boolean theBoolean) { 1059 myWasNotGiven = new BooleanDt(theBoolean); 1060 return this; 1061 } 1062 1063 1064 /** 1065 * Gets the value(s) for <b>reasonNotGiven</b> (). 1066 * creating it if it does 1067 * not exist. Will not return <code>null</code>. 1068 * 1069 * <p> 1070 * <b>Definition:</b> 1071 * A code indicating why the administration was not performed. 1072 * </p> 1073 */ 1074 public java.util.List<CodeableConceptDt> getReasonNotGiven() { 1075 if (myReasonNotGiven == null) { 1076 myReasonNotGiven = new java.util.ArrayList<CodeableConceptDt>(); 1077 } 1078 return myReasonNotGiven; 1079 } 1080 1081 /** 1082 * Sets the value(s) for <b>reasonNotGiven</b> () 1083 * 1084 * <p> 1085 * <b>Definition:</b> 1086 * A code indicating why the administration was not performed. 1087 * </p> 1088 */ 1089 public MedicationAdministration setReasonNotGiven(java.util.List<CodeableConceptDt> theValue) { 1090 myReasonNotGiven = theValue; 1091 return this; 1092 } 1093 1094 1095 1096 /** 1097 * Adds and returns a new value for <b>reasonNotGiven</b> () 1098 * 1099 * <p> 1100 * <b>Definition:</b> 1101 * A code indicating why the administration was not performed. 1102 * </p> 1103 */ 1104 public CodeableConceptDt addReasonNotGiven() { 1105 CodeableConceptDt newType = new CodeableConceptDt(); 1106 getReasonNotGiven().add(newType); 1107 return newType; 1108 } 1109 1110 /** 1111 * Adds a given new value for <b>reasonNotGiven</b> () 1112 * 1113 * <p> 1114 * <b>Definition:</b> 1115 * A code indicating why the administration was not performed. 1116 * </p> 1117 * @param theValue The reasonNotGiven to add (must not be <code>null</code>) 1118 */ 1119 public MedicationAdministration addReasonNotGiven(CodeableConceptDt theValue) { 1120 if (theValue == null) { 1121 throw new NullPointerException("theValue must not be null"); 1122 } 1123 getReasonNotGiven().add(theValue); 1124 return this; 1125 } 1126 1127 /** 1128 * Gets the first repetition for <b>reasonNotGiven</b> (), 1129 * creating it if it does not already exist. 1130 * 1131 * <p> 1132 * <b>Definition:</b> 1133 * A code indicating why the administration was not performed. 1134 * </p> 1135 */ 1136 public CodeableConceptDt getReasonNotGivenFirstRep() { 1137 if (getReasonNotGiven().isEmpty()) { 1138 return addReasonNotGiven(); 1139 } 1140 return getReasonNotGiven().get(0); 1141 } 1142 1143 /** 1144 * Gets the value(s) for <b>reasonGiven</b> (). 1145 * creating it if it does 1146 * not exist. Will not return <code>null</code>. 1147 * 1148 * <p> 1149 * <b>Definition:</b> 1150 * A code indicating why the medication was given. 1151 * </p> 1152 */ 1153 public java.util.List<CodeableConceptDt> getReasonGiven() { 1154 if (myReasonGiven == null) { 1155 myReasonGiven = new java.util.ArrayList<CodeableConceptDt>(); 1156 } 1157 return myReasonGiven; 1158 } 1159 1160 /** 1161 * Sets the value(s) for <b>reasonGiven</b> () 1162 * 1163 * <p> 1164 * <b>Definition:</b> 1165 * A code indicating why the medication was given. 1166 * </p> 1167 */ 1168 public MedicationAdministration setReasonGiven(java.util.List<CodeableConceptDt> theValue) { 1169 myReasonGiven = theValue; 1170 return this; 1171 } 1172 1173 1174 1175 /** 1176 * Adds and returns a new value for <b>reasonGiven</b> () 1177 * 1178 * <p> 1179 * <b>Definition:</b> 1180 * A code indicating why the medication was given. 1181 * </p> 1182 */ 1183 public CodeableConceptDt addReasonGiven() { 1184 CodeableConceptDt newType = new CodeableConceptDt(); 1185 getReasonGiven().add(newType); 1186 return newType; 1187 } 1188 1189 /** 1190 * Adds a given new value for <b>reasonGiven</b> () 1191 * 1192 * <p> 1193 * <b>Definition:</b> 1194 * A code indicating why the medication was given. 1195 * </p> 1196 * @param theValue The reasonGiven to add (must not be <code>null</code>) 1197 */ 1198 public MedicationAdministration addReasonGiven(CodeableConceptDt theValue) { 1199 if (theValue == null) { 1200 throw new NullPointerException("theValue must not be null"); 1201 } 1202 getReasonGiven().add(theValue); 1203 return this; 1204 } 1205 1206 /** 1207 * Gets the first repetition for <b>reasonGiven</b> (), 1208 * creating it if it does not already exist. 1209 * 1210 * <p> 1211 * <b>Definition:</b> 1212 * A code indicating why the medication was given. 1213 * </p> 1214 */ 1215 public CodeableConceptDt getReasonGivenFirstRep() { 1216 if (getReasonGiven().isEmpty()) { 1217 return addReasonGiven(); 1218 } 1219 return getReasonGiven().get(0); 1220 } 1221 1222 /** 1223 * Gets the value(s) for <b>effectiveTime[x]</b> (when.done). 1224 * creating it if it does 1225 * not exist. Will not return <code>null</code>. 1226 * 1227 * <p> 1228 * <b>Definition:</b> 1229 * A specific date/time or interval of time during which the administration took place (or did not take place, when the 'notGiven' attribute is true). For many administrations, such as swallowing a tablet the use of dateTime is more appropriate. 1230 * </p> 1231 */ 1232 public IDatatype getEffectiveTime() { 1233 return myEffectiveTime; 1234 } 1235 1236 /** 1237 * Sets the value(s) for <b>effectiveTime[x]</b> (when.done) 1238 * 1239 * <p> 1240 * <b>Definition:</b> 1241 * A specific date/time or interval of time during which the administration took place (or did not take place, when the 'notGiven' attribute is true). For many administrations, such as swallowing a tablet the use of dateTime is more appropriate. 1242 * </p> 1243 */ 1244 public MedicationAdministration setEffectiveTime(IDatatype theValue) { 1245 myEffectiveTime = theValue; 1246 return this; 1247 } 1248 1249 1250 1251 1252 /** 1253 * Gets the value(s) for <b>medication[x]</b> (). 1254 * creating it if it does 1255 * not exist. Will not return <code>null</code>. 1256 * 1257 * <p> 1258 * <b>Definition:</b> 1259 * Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. 1260 * </p> 1261 */ 1262 public IDatatype getMedication() { 1263 return myMedication; 1264 } 1265 1266 /** 1267 * Sets the value(s) for <b>medication[x]</b> () 1268 * 1269 * <p> 1270 * <b>Definition:</b> 1271 * Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. 1272 * </p> 1273 */ 1274 public MedicationAdministration setMedication(IDatatype theValue) { 1275 myMedication = theValue; 1276 return this; 1277 } 1278 1279 1280 1281 1282 /** 1283 * Gets the value(s) for <b>device</b> (). 1284 * creating it if it does 1285 * not exist. Will not return <code>null</code>. 1286 * 1287 * <p> 1288 * <b>Definition:</b> 1289 * The device used in administering the medication to the patient. For example, a particular infusion pump 1290 * </p> 1291 */ 1292 public java.util.List<ResourceReferenceDt> getDevice() { 1293 if (myDevice == null) { 1294 myDevice = new java.util.ArrayList<ResourceReferenceDt>(); 1295 } 1296 return myDevice; 1297 } 1298 1299 /** 1300 * Sets the value(s) for <b>device</b> () 1301 * 1302 * <p> 1303 * <b>Definition:</b> 1304 * The device used in administering the medication to the patient. For example, a particular infusion pump 1305 * </p> 1306 */ 1307 public MedicationAdministration setDevice(java.util.List<ResourceReferenceDt> theValue) { 1308 myDevice = theValue; 1309 return this; 1310 } 1311 1312 1313 1314 /** 1315 * Adds and returns a new value for <b>device</b> () 1316 * 1317 * <p> 1318 * <b>Definition:</b> 1319 * The device used in administering the medication to the patient. For example, a particular infusion pump 1320 * </p> 1321 */ 1322 public ResourceReferenceDt addDevice() { 1323 ResourceReferenceDt newType = new ResourceReferenceDt(); 1324 getDevice().add(newType); 1325 return newType; 1326 } 1327 1328 /** 1329 * Gets the value(s) for <b>note</b> (). 1330 * creating it if it does 1331 * not exist. Will not return <code>null</code>. 1332 * 1333 * <p> 1334 * <b>Definition:</b> 1335 * Extra information about the medication administration that is not conveyed by the other attributes. 1336 * </p> 1337 */ 1338 public StringDt getNoteElement() { 1339 if (myNote == null) { 1340 myNote = new StringDt(); 1341 } 1342 return myNote; 1343 } 1344 1345 1346 /** 1347 * Gets the value(s) for <b>note</b> (). 1348 * creating it if it does 1349 * not exist. Will not return <code>null</code>. 1350 * 1351 * <p> 1352 * <b>Definition:</b> 1353 * Extra information about the medication administration that is not conveyed by the other attributes. 1354 * </p> 1355 */ 1356 public String getNote() { 1357 return getNoteElement().getValue(); 1358 } 1359 1360 /** 1361 * Sets the value(s) for <b>note</b> () 1362 * 1363 * <p> 1364 * <b>Definition:</b> 1365 * Extra information about the medication administration that is not conveyed by the other attributes. 1366 * </p> 1367 */ 1368 public MedicationAdministration setNote(StringDt theValue) { 1369 myNote = theValue; 1370 return this; 1371 } 1372 1373 1374 1375 /** 1376 * Sets the value for <b>note</b> () 1377 * 1378 * <p> 1379 * <b>Definition:</b> 1380 * Extra information about the medication administration that is not conveyed by the other attributes. 1381 * </p> 1382 */ 1383 public MedicationAdministration setNote( String theString) { 1384 myNote = new StringDt(theString); 1385 return this; 1386 } 1387 1388 1389 /** 1390 * Gets the value(s) for <b>dosage</b> (). 1391 * creating it if it does 1392 * not exist. Will not return <code>null</code>. 1393 * 1394 * <p> 1395 * <b>Definition:</b> 1396 * Describes the medication dosage information details e.g. dose, rate, site, route, etc. 1397 * </p> 1398 */ 1399 public Dosage getDosage() { 1400 if (myDosage == null) { 1401 myDosage = new Dosage(); 1402 } 1403 return myDosage; 1404 } 1405 1406 /** 1407 * Sets the value(s) for <b>dosage</b> () 1408 * 1409 * <p> 1410 * <b>Definition:</b> 1411 * Describes the medication dosage information details e.g. dose, rate, site, route, etc. 1412 * </p> 1413 */ 1414 public MedicationAdministration setDosage(Dosage theValue) { 1415 myDosage = theValue; 1416 return this; 1417 } 1418 1419 1420 1421 1422 /** 1423 * Block class for child element: <b>MedicationAdministration.dosage</b> () 1424 * 1425 * <p> 1426 * <b>Definition:</b> 1427 * Describes the medication dosage information details e.g. dose, rate, site, route, etc. 1428 * </p> 1429 */ 1430 @Block() 1431 public static class Dosage 1432 extends BaseIdentifiableElement implements IResourceBlock { 1433 1434 @Child(name="text", type=StringDt.class, order=0, min=0, max=1, summary=false, modifier=false) 1435 @Description( 1436 shortDefinition="", 1437 formalDefinition="Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication." 1438 ) 1439 private StringDt myText; 1440 1441 @Child(name="site", order=1, min=0, max=1, summary=false, modifier=false, type={ 1442 CodeableConceptDt.class, BodySite.class }) 1443 @Description( 1444 shortDefinition="", 1445 formalDefinition="A coded specification of the anatomic site where the medication first entered the body. For example, \"left arm\"" 1446 ) 1447 private IDatatype mySite; 1448 1449 @Child(name="route", type=CodeableConceptDt.class, order=2, min=0, max=1, summary=false, modifier=false) 1450 @Description( 1451 shortDefinition="", 1452 formalDefinition="A code specifying the route or physiological path of administration of a therapeutic agent into or onto the patient. For example, topical, intravenous, etc." 1453 ) 1454 private CodeableConceptDt myRoute; 1455 1456 @Child(name="method", type=CodeableConceptDt.class, order=3, min=0, max=1, summary=false, modifier=false) 1457 @Description( 1458 shortDefinition="", 1459 formalDefinition="A coded value indicating the method by which the medication is intended to be or was introduced into or on the body. This attribute will most often NOT be populated. It is most commonly used for injections. For example, Slow Push, Deep IV." 1460 ) 1461 private CodeableConceptDt myMethod; 1462 1463 @Child(name="quantity", type=SimpleQuantityDt.class, order=4, min=0, max=1, summary=false, modifier=false) 1464 @Description( 1465 shortDefinition="", 1466 formalDefinition="The amount of the medication given at one administration event. Use this value when the administration is essentially an instantaneous event such as a swallowing a tablet or giving an injection." 1467 ) 1468 private SimpleQuantityDt myQuantity; 1469 1470 @Child(name="rate", order=5, min=0, max=1, summary=false, modifier=false, type={ 1471 RatioDt.class, RangeDt.class }) 1472 @Description( 1473 shortDefinition="", 1474 formalDefinition="Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Currently we do not specify a default of '1' in the denominator, but this is being discussed. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours." 1475 ) 1476 private IDatatype myRate; 1477 1478 1479 @Override 1480 public boolean isEmpty() { 1481 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myText, mySite, myRoute, myMethod, myQuantity, myRate); 1482 } 1483 1484 @Override 1485 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1486 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myText, mySite, myRoute, myMethod, myQuantity, myRate); 1487 } 1488 1489 /** 1490 * Gets the value(s) for <b>text</b> (). 1491 * creating it if it does 1492 * not exist. Will not return <code>null</code>. 1493 * 1494 * <p> 1495 * <b>Definition:</b> 1496 * Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. 1497 * </p> 1498 */ 1499 public StringDt getTextElement() { 1500 if (myText == null) { 1501 myText = new StringDt(); 1502 } 1503 return myText; 1504 } 1505 1506 1507 /** 1508 * Gets the value(s) for <b>text</b> (). 1509 * creating it if it does 1510 * not exist. Will not return <code>null</code>. 1511 * 1512 * <p> 1513 * <b>Definition:</b> 1514 * Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. 1515 * </p> 1516 */ 1517 public String getText() { 1518 return getTextElement().getValue(); 1519 } 1520 1521 /** 1522 * Sets the value(s) for <b>text</b> () 1523 * 1524 * <p> 1525 * <b>Definition:</b> 1526 * Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. 1527 * </p> 1528 */ 1529 public Dosage setText(StringDt theValue) { 1530 myText = theValue; 1531 return this; 1532 } 1533 1534 1535 1536 /** 1537 * Sets the value for <b>text</b> () 1538 * 1539 * <p> 1540 * <b>Definition:</b> 1541 * Free text dosage instructions can be used for cases where the instructions are too complex to code. When coded instructions are present, the free text instructions may still be present for display to humans taking or administering the medication. 1542 * </p> 1543 */ 1544 public Dosage setText( String theString) { 1545 myText = new StringDt(theString); 1546 return this; 1547 } 1548 1549 1550 /** 1551 * Gets the value(s) for <b>site[x]</b> (). 1552 * creating it if it does 1553 * not exist. Will not return <code>null</code>. 1554 * 1555 * <p> 1556 * <b>Definition:</b> 1557 * A coded specification of the anatomic site where the medication first entered the body. For example, \"left arm\" 1558 * </p> 1559 */ 1560 public IDatatype getSite() { 1561 return mySite; 1562 } 1563 1564 /** 1565 * Sets the value(s) for <b>site[x]</b> () 1566 * 1567 * <p> 1568 * <b>Definition:</b> 1569 * A coded specification of the anatomic site where the medication first entered the body. For example, \"left arm\" 1570 * </p> 1571 */ 1572 public Dosage setSite(IDatatype theValue) { 1573 mySite = theValue; 1574 return this; 1575 } 1576 1577 1578 1579 1580 /** 1581 * Gets the value(s) for <b>route</b> (). 1582 * creating it if it does 1583 * not exist. Will not return <code>null</code>. 1584 * 1585 * <p> 1586 * <b>Definition:</b> 1587 * A code specifying the route or physiological path of administration of a therapeutic agent into or onto the patient. For example, topical, intravenous, etc. 1588 * </p> 1589 */ 1590 public CodeableConceptDt getRoute() { 1591 if (myRoute == null) { 1592 myRoute = new CodeableConceptDt(); 1593 } 1594 return myRoute; 1595 } 1596 1597 /** 1598 * Sets the value(s) for <b>route</b> () 1599 * 1600 * <p> 1601 * <b>Definition:</b> 1602 * A code specifying the route or physiological path of administration of a therapeutic agent into or onto the patient. For example, topical, intravenous, etc. 1603 * </p> 1604 */ 1605 public Dosage setRoute(CodeableConceptDt theValue) { 1606 myRoute = theValue; 1607 return this; 1608 } 1609 1610 1611 1612 1613 /** 1614 * Gets the value(s) for <b>method</b> (). 1615 * creating it if it does 1616 * not exist. Will not return <code>null</code>. 1617 * 1618 * <p> 1619 * <b>Definition:</b> 1620 * A coded value indicating the method by which the medication is intended to be or was introduced into or on the body. This attribute will most often NOT be populated. It is most commonly used for injections. For example, Slow Push, Deep IV. 1621 * </p> 1622 */ 1623 public CodeableConceptDt getMethod() { 1624 if (myMethod == null) { 1625 myMethod = new CodeableConceptDt(); 1626 } 1627 return myMethod; 1628 } 1629 1630 /** 1631 * Sets the value(s) for <b>method</b> () 1632 * 1633 * <p> 1634 * <b>Definition:</b> 1635 * A coded value indicating the method by which the medication is intended to be or was introduced into or on the body. This attribute will most often NOT be populated. It is most commonly used for injections. For example, Slow Push, Deep IV. 1636 * </p> 1637 */ 1638 public Dosage setMethod(CodeableConceptDt theValue) { 1639 myMethod = theValue; 1640 return this; 1641 } 1642 1643 1644 1645 1646 /** 1647 * Gets the value(s) for <b>quantity</b> (). 1648 * creating it if it does 1649 * not exist. Will not return <code>null</code>. 1650 * 1651 * <p> 1652 * <b>Definition:</b> 1653 * The amount of the medication given at one administration event. Use this value when the administration is essentially an instantaneous event such as a swallowing a tablet or giving an injection. 1654 * </p> 1655 */ 1656 public SimpleQuantityDt getQuantity() { 1657 if (myQuantity == null) { 1658 myQuantity = new SimpleQuantityDt(); 1659 } 1660 return myQuantity; 1661 } 1662 1663 /** 1664 * Sets the value(s) for <b>quantity</b> () 1665 * 1666 * <p> 1667 * <b>Definition:</b> 1668 * The amount of the medication given at one administration event. Use this value when the administration is essentially an instantaneous event such as a swallowing a tablet or giving an injection. 1669 * </p> 1670 */ 1671 public Dosage setQuantity(SimpleQuantityDt theValue) { 1672 myQuantity = theValue; 1673 return this; 1674 } 1675 1676 1677 1678 1679 /** 1680 * Gets the value(s) for <b>rate[x]</b> (). 1681 * creating it if it does 1682 * not exist. Will not return <code>null</code>. 1683 * 1684 * <p> 1685 * <b>Definition:</b> 1686 * Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Currently we do not specify a default of '1' in the denominator, but this is being discussed. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. 1687 * </p> 1688 */ 1689 public IDatatype getRate() { 1690 return myRate; 1691 } 1692 1693 /** 1694 * Sets the value(s) for <b>rate[x]</b> () 1695 * 1696 * <p> 1697 * <b>Definition:</b> 1698 * Identifies the speed with which the medication was or will be introduced into the patient. Typically the rate for an infusion e.g. 100 ml per 1 hour or 100 ml/hr. May also be expressed as a rate per unit of time e.g. 500 ml per 2 hours. Currently we do not specify a default of '1' in the denominator, but this is being discussed. Other examples: 200 mcg/min or 200 mcg/1 minute; 1 liter/8 hours. 1699 * </p> 1700 */ 1701 public Dosage setRate(IDatatype theValue) { 1702 myRate = theValue; 1703 return this; 1704 } 1705 1706 1707 1708 1709 1710 1711 } 1712 1713 1714 1715 1716 @Override 1717 public String getResourceName() { 1718 return "MedicationAdministration"; 1719 } 1720 1721 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1722 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1723 } 1724 1725 1726}