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>ImmunizationRecommendation</b> Resource 320 * (clinical.medication) 321 * 322 * <p> 323 * <b>Definition:</b> 324 * A patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification. 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/ImmunizationRecommendation">http://hl7.org/fhir/profiles/ImmunizationRecommendation</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="ImmunizationRecommendation", profile="http://hl7.org/fhir/profiles/ImmunizationRecommendation", id="immunizationrecommendation") 339public class ImmunizationRecommendation extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>vaccine-type</b> 344 * <p> 345 * Description: <b></b><br> 346 * Type: <b>token</b><br> 347 * Path: <b>ImmunizationRecommendation.recommendation.vaccineCode</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="vaccine-type", path="ImmunizationRecommendation.recommendation.vaccineCode", description="", type="token" ) 351 public static final String SP_VACCINE_TYPE = "vaccine-type"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>vaccine-type</b> 355 * <p> 356 * Description: <b></b><br> 357 * Type: <b>token</b><br> 358 * Path: <b>ImmunizationRecommendation.recommendation.vaccineCode</b><br> 359 * </p> 360 */ 361 public static final TokenClientParam VACCINE_TYPE = new TokenClientParam(SP_VACCINE_TYPE); 362 363 /** 364 * Search parameter constant for <b>identifier</b> 365 * <p> 366 * Description: <b></b><br> 367 * Type: <b>token</b><br> 368 * Path: <b>ImmunizationRecommendation.identifier</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="identifier", path="ImmunizationRecommendation.identifier", description="", type="token" ) 372 public static final String SP_IDENTIFIER = "identifier"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 376 * <p> 377 * Description: <b></b><br> 378 * Type: <b>token</b><br> 379 * Path: <b>ImmunizationRecommendation.identifier</b><br> 380 * </p> 381 */ 382 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 383 384 /** 385 * Search parameter constant for <b>date</b> 386 * <p> 387 * Description: <b></b><br> 388 * Type: <b>date</b><br> 389 * Path: <b>ImmunizationRecommendation.recommendation.date</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="date", path="ImmunizationRecommendation.recommendation.date", description="", type="date" ) 393 public static final String SP_DATE = "date"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>date</b> 397 * <p> 398 * Description: <b></b><br> 399 * Type: <b>date</b><br> 400 * Path: <b>ImmunizationRecommendation.recommendation.date</b><br> 401 * </p> 402 */ 403 public static final DateClientParam DATE = new DateClientParam(SP_DATE); 404 405 /** 406 * Search parameter constant for <b>dose-number</b> 407 * <p> 408 * Description: <b></b><br> 409 * Type: <b>number</b><br> 410 * Path: <b>ImmunizationRecommendation.recommendation.doseNumber</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="dose-number", path="ImmunizationRecommendation.recommendation.doseNumber", description="", type="number" ) 414 public static final String SP_DOSE_NUMBER = "dose-number"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>dose-number</b> 418 * <p> 419 * Description: <b></b><br> 420 * Type: <b>number</b><br> 421 * Path: <b>ImmunizationRecommendation.recommendation.doseNumber</b><br> 422 * </p> 423 */ 424 public static final NumberClientParam DOSE_NUMBER = new NumberClientParam(SP_DOSE_NUMBER); 425 426 /** 427 * Search parameter constant for <b>status</b> 428 * <p> 429 * Description: <b></b><br> 430 * Type: <b>token</b><br> 431 * Path: <b>ImmunizationRecommendation.recommendation.forecastStatus</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="status", path="ImmunizationRecommendation.recommendation.forecastStatus", description="", type="token" ) 435 public static final String SP_STATUS = "status"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>status</b> 439 * <p> 440 * Description: <b></b><br> 441 * Type: <b>token</b><br> 442 * Path: <b>ImmunizationRecommendation.recommendation.forecastStatus</b><br> 443 * </p> 444 */ 445 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 446 447 /** 448 * Search parameter constant for <b>dose-sequence</b> 449 * <p> 450 * Description: <b></b><br> 451 * Type: <b>number</b><br> 452 * Path: <b>ImmunizationRecommendation.recommendation.protocol.doseSequence</b><br> 453 * </p> 454 */ 455 @SearchParamDefinition(name="dose-sequence", path="ImmunizationRecommendation.recommendation.protocol.doseSequence", description="", type="number" ) 456 public static final String SP_DOSE_SEQUENCE = "dose-sequence"; 457 458 /** 459 * <b>Fluent Client</b> search parameter constant for <b>dose-sequence</b> 460 * <p> 461 * Description: <b></b><br> 462 * Type: <b>number</b><br> 463 * Path: <b>ImmunizationRecommendation.recommendation.protocol.doseSequence</b><br> 464 * </p> 465 */ 466 public static final NumberClientParam DOSE_SEQUENCE = new NumberClientParam(SP_DOSE_SEQUENCE); 467 468 /** 469 * Search parameter constant for <b>support</b> 470 * <p> 471 * Description: <b></b><br> 472 * Type: <b>reference</b><br> 473 * Path: <b>ImmunizationRecommendation.recommendation.supportingImmunization</b><br> 474 * </p> 475 */ 476 @SearchParamDefinition(name="support", path="ImmunizationRecommendation.recommendation.supportingImmunization", description="", type="reference" ) 477 public static final String SP_SUPPORT = "support"; 478 479 /** 480 * <b>Fluent Client</b> search parameter constant for <b>support</b> 481 * <p> 482 * Description: <b></b><br> 483 * Type: <b>reference</b><br> 484 * Path: <b>ImmunizationRecommendation.recommendation.supportingImmunization</b><br> 485 * </p> 486 */ 487 public static final ReferenceClientParam SUPPORT = new ReferenceClientParam(SP_SUPPORT); 488 489 /** 490 * Search parameter constant for <b>information</b> 491 * <p> 492 * Description: <b></b><br> 493 * Type: <b>reference</b><br> 494 * Path: <b>ImmunizationRecommendation.recommendation.supportingPatientInformation</b><br> 495 * </p> 496 */ 497 @SearchParamDefinition(name="information", path="ImmunizationRecommendation.recommendation.supportingPatientInformation", description="", type="reference" ) 498 public static final String SP_INFORMATION = "information"; 499 500 /** 501 * <b>Fluent Client</b> search parameter constant for <b>information</b> 502 * <p> 503 * Description: <b></b><br> 504 * Type: <b>reference</b><br> 505 * Path: <b>ImmunizationRecommendation.recommendation.supportingPatientInformation</b><br> 506 * </p> 507 */ 508 public static final ReferenceClientParam INFORMATION = new ReferenceClientParam(SP_INFORMATION); 509 510 /** 511 * Search parameter constant for <b>patient</b> 512 * <p> 513 * Description: <b></b><br> 514 * Type: <b>reference</b><br> 515 * Path: <b>ImmunizationRecommendation.patient</b><br> 516 * </p> 517 */ 518 @SearchParamDefinition(name="patient", path="ImmunizationRecommendation.patient", description="", type="reference" ) 519 public static final String SP_PATIENT = "patient"; 520 521 /** 522 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 523 * <p> 524 * Description: <b></b><br> 525 * Type: <b>reference</b><br> 526 * Path: <b>ImmunizationRecommendation.patient</b><br> 527 * </p> 528 */ 529 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 530 531 532 /** 533 * Constant for fluent queries to be used to add include statements. Specifies 534 * the path value of "<b>ImmunizationRecommendation:information</b>". 535 */ 536 public static final Include INCLUDE_INFORMATION = new Include("ImmunizationRecommendation:information"); 537 538 /** 539 * Constant for fluent queries to be used to add include statements. Specifies 540 * the path value of "<b>ImmunizationRecommendation:patient</b>". 541 */ 542 public static final Include INCLUDE_PATIENT = new Include("ImmunizationRecommendation:patient"); 543 544 /** 545 * Constant for fluent queries to be used to add include statements. Specifies 546 * the path value of "<b>ImmunizationRecommendation:support</b>". 547 */ 548 public static final Include INCLUDE_SUPPORT = new Include("ImmunizationRecommendation:support"); 549 550 551 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 552 @Description( 553 shortDefinition="id", 554 formalDefinition="A unique identifier assigned to this particular recommendation record." 555 ) 556 private java.util.List<IdentifierDt> myIdentifier; 557 558 @Child(name="patient", order=1, min=1, max=1, summary=true, modifier=false, type={ 559 ca.uhn.fhir.model.dstu2.resource.Patient.class }) 560 @Description( 561 shortDefinition="who.focus", 562 formalDefinition="The patient for whom the recommendations are for." 563 ) 564 private ResourceReferenceDt myPatient; 565 566 @Child(name="recommendation", order=2, min=1, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 567 @Description( 568 shortDefinition="", 569 formalDefinition="Vaccine administration recommendations" 570 ) 571 private java.util.List<Recommendation> myRecommendation; 572 573 574 @Override 575 public boolean isEmpty() { 576 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myPatient, myRecommendation); 577 } 578 579 @Override 580 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 581 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myPatient, myRecommendation); 582 } 583 584 /** 585 * Gets the value(s) for <b>identifier</b> (id). 586 * creating it if it does 587 * not exist. Will not return <code>null</code>. 588 * 589 * <p> 590 * <b>Definition:</b> 591 * A unique identifier assigned to this particular recommendation record. 592 * </p> 593 */ 594 public java.util.List<IdentifierDt> getIdentifier() { 595 if (myIdentifier == null) { 596 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 597 } 598 return myIdentifier; 599 } 600 601 /** 602 * Sets the value(s) for <b>identifier</b> (id) 603 * 604 * <p> 605 * <b>Definition:</b> 606 * A unique identifier assigned to this particular recommendation record. 607 * </p> 608 */ 609 public ImmunizationRecommendation setIdentifier(java.util.List<IdentifierDt> theValue) { 610 myIdentifier = theValue; 611 return this; 612 } 613 614 615 616 /** 617 * Adds and returns a new value for <b>identifier</b> (id) 618 * 619 * <p> 620 * <b>Definition:</b> 621 * A unique identifier assigned to this particular recommendation record. 622 * </p> 623 */ 624 public IdentifierDt addIdentifier() { 625 IdentifierDt newType = new IdentifierDt(); 626 getIdentifier().add(newType); 627 return newType; 628 } 629 630 /** 631 * Adds a given new value for <b>identifier</b> (id) 632 * 633 * <p> 634 * <b>Definition:</b> 635 * A unique identifier assigned to this particular recommendation record. 636 * </p> 637 * @param theValue The identifier to add (must not be <code>null</code>) 638 */ 639 public ImmunizationRecommendation addIdentifier(IdentifierDt theValue) { 640 if (theValue == null) { 641 throw new NullPointerException("theValue must not be null"); 642 } 643 getIdentifier().add(theValue); 644 return this; 645 } 646 647 /** 648 * Gets the first repetition for <b>identifier</b> (id), 649 * creating it if it does not already exist. 650 * 651 * <p> 652 * <b>Definition:</b> 653 * A unique identifier assigned to this particular recommendation record. 654 * </p> 655 */ 656 public IdentifierDt getIdentifierFirstRep() { 657 if (getIdentifier().isEmpty()) { 658 return addIdentifier(); 659 } 660 return getIdentifier().get(0); 661 } 662 663 /** 664 * Gets the value(s) for <b>patient</b> (who.focus). 665 * creating it if it does 666 * not exist. Will not return <code>null</code>. 667 * 668 * <p> 669 * <b>Definition:</b> 670 * The patient for whom the recommendations are for. 671 * </p> 672 */ 673 public ResourceReferenceDt getPatient() { 674 if (myPatient == null) { 675 myPatient = new ResourceReferenceDt(); 676 } 677 return myPatient; 678 } 679 680 /** 681 * Sets the value(s) for <b>patient</b> (who.focus) 682 * 683 * <p> 684 * <b>Definition:</b> 685 * The patient for whom the recommendations are for. 686 * </p> 687 */ 688 public ImmunizationRecommendation setPatient(ResourceReferenceDt theValue) { 689 myPatient = theValue; 690 return this; 691 } 692 693 694 695 696 /** 697 * Gets the value(s) for <b>recommendation</b> (). 698 * creating it if it does 699 * not exist. Will not return <code>null</code>. 700 * 701 * <p> 702 * <b>Definition:</b> 703 * Vaccine administration recommendations 704 * </p> 705 */ 706 public java.util.List<Recommendation> getRecommendation() { 707 if (myRecommendation == null) { 708 myRecommendation = new java.util.ArrayList<Recommendation>(); 709 } 710 return myRecommendation; 711 } 712 713 /** 714 * Sets the value(s) for <b>recommendation</b> () 715 * 716 * <p> 717 * <b>Definition:</b> 718 * Vaccine administration recommendations 719 * </p> 720 */ 721 public ImmunizationRecommendation setRecommendation(java.util.List<Recommendation> theValue) { 722 myRecommendation = theValue; 723 return this; 724 } 725 726 727 728 /** 729 * Adds and returns a new value for <b>recommendation</b> () 730 * 731 * <p> 732 * <b>Definition:</b> 733 * Vaccine administration recommendations 734 * </p> 735 */ 736 public Recommendation addRecommendation() { 737 Recommendation newType = new Recommendation(); 738 getRecommendation().add(newType); 739 return newType; 740 } 741 742 /** 743 * Adds a given new value for <b>recommendation</b> () 744 * 745 * <p> 746 * <b>Definition:</b> 747 * Vaccine administration recommendations 748 * </p> 749 * @param theValue The recommendation to add (must not be <code>null</code>) 750 */ 751 public ImmunizationRecommendation addRecommendation(Recommendation theValue) { 752 if (theValue == null) { 753 throw new NullPointerException("theValue must not be null"); 754 } 755 getRecommendation().add(theValue); 756 return this; 757 } 758 759 /** 760 * Gets the first repetition for <b>recommendation</b> (), 761 * creating it if it does not already exist. 762 * 763 * <p> 764 * <b>Definition:</b> 765 * Vaccine administration recommendations 766 * </p> 767 */ 768 public Recommendation getRecommendationFirstRep() { 769 if (getRecommendation().isEmpty()) { 770 return addRecommendation(); 771 } 772 return getRecommendation().get(0); 773 } 774 775 /** 776 * Block class for child element: <b>ImmunizationRecommendation.recommendation</b> () 777 * 778 * <p> 779 * <b>Definition:</b> 780 * Vaccine administration recommendations 781 * </p> 782 */ 783 @Block() 784 public static class Recommendation 785 extends BaseIdentifiableElement implements IResourceBlock { 786 787 @Child(name="date", type=DateTimeDt.class, order=0, min=1, max=1, summary=true, modifier=false) 788 @Description( 789 shortDefinition="", 790 formalDefinition="The date the immunization recommendation was created." 791 ) 792 private DateTimeDt myDate; 793 794 @Child(name="vaccineCode", type=CodeableConceptDt.class, order=1, min=1, max=1, summary=true, modifier=false) 795 @Description( 796 shortDefinition="", 797 formalDefinition="Vaccine that pertains to the recommendation" 798 ) 799 private CodeableConceptDt myVaccineCode; 800 801 @Child(name="doseNumber", type=PositiveIntDt.class, order=2, min=0, max=1, summary=true, modifier=false) 802 @Description( 803 shortDefinition="", 804 formalDefinition="This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose)." 805 ) 806 private PositiveIntDt myDoseNumber; 807 808 @Child(name="forecastStatus", type=CodeableConceptDt.class, order=3, min=1, max=1, summary=true, modifier=false) 809 @Description( 810 shortDefinition="", 811 formalDefinition="Vaccine administration status" 812 ) 813 private BoundCodeableConceptDt<ImmunizationRecommendationStatusCodesEnum> myForecastStatus; 814 815 @Child(name="dateCriterion", order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 816 @Description( 817 shortDefinition="", 818 formalDefinition="Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc." 819 ) 820 private java.util.List<RecommendationDateCriterion> myDateCriterion; 821 822 @Child(name="protocol", order=5, min=0, max=1, summary=false, modifier=false) 823 @Description( 824 shortDefinition="", 825 formalDefinition="Contains information about the protocol under which the vaccine was administered" 826 ) 827 private RecommendationProtocol myProtocol; 828 829 @Child(name="supportingImmunization", order=6, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 830 ca.uhn.fhir.model.dstu2.resource.Immunization.class }) 831 @Description( 832 shortDefinition="", 833 formalDefinition="Immunization event history that supports the status and recommendation" 834 ) 835 private java.util.List<ResourceReferenceDt> mySupportingImmunization; 836 837 @Child(name="supportingPatientInformation", order=7, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 838 ca.uhn.fhir.model.dstu2.resource.Observation.class, ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance.class }) 839 @Description( 840 shortDefinition="", 841 formalDefinition="Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information." 842 ) 843 private java.util.List<ResourceReferenceDt> mySupportingPatientInformation; 844 845 846 @Override 847 public boolean isEmpty() { 848 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myDate, myVaccineCode, myDoseNumber, myForecastStatus, myDateCriterion, myProtocol, mySupportingImmunization, mySupportingPatientInformation); 849 } 850 851 @Override 852 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 853 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myDate, myVaccineCode, myDoseNumber, myForecastStatus, myDateCriterion, myProtocol, mySupportingImmunization, mySupportingPatientInformation); 854 } 855 856 /** 857 * Gets the value(s) for <b>date</b> (). 858 * creating it if it does 859 * not exist. Will not return <code>null</code>. 860 * 861 * <p> 862 * <b>Definition:</b> 863 * The date the immunization recommendation was created. 864 * </p> 865 */ 866 public DateTimeDt getDateElement() { 867 if (myDate == null) { 868 myDate = new DateTimeDt(); 869 } 870 return myDate; 871 } 872 873 874 /** 875 * Gets the value(s) for <b>date</b> (). 876 * creating it if it does 877 * not exist. Will not return <code>null</code>. 878 * 879 * <p> 880 * <b>Definition:</b> 881 * The date the immunization recommendation was created. 882 * </p> 883 */ 884 public Date getDate() { 885 return getDateElement().getValue(); 886 } 887 888 /** 889 * Sets the value(s) for <b>date</b> () 890 * 891 * <p> 892 * <b>Definition:</b> 893 * The date the immunization recommendation was created. 894 * </p> 895 */ 896 public Recommendation setDate(DateTimeDt theValue) { 897 myDate = theValue; 898 return this; 899 } 900 901 902 903 /** 904 * Sets the value for <b>date</b> () 905 * 906 * <p> 907 * <b>Definition:</b> 908 * The date the immunization recommendation was created. 909 * </p> 910 */ 911 public Recommendation setDate( Date theDate, TemporalPrecisionEnum thePrecision) { 912 myDate = new DateTimeDt(theDate, thePrecision); 913 return this; 914 } 915 916 /** 917 * Sets the value for <b>date</b> () 918 * 919 * <p> 920 * <b>Definition:</b> 921 * The date the immunization recommendation was created. 922 * </p> 923 */ 924 public Recommendation setDateWithSecondsPrecision( Date theDate) { 925 myDate = new DateTimeDt(theDate); 926 return this; 927 } 928 929 930 /** 931 * Gets the value(s) for <b>vaccineCode</b> (). 932 * creating it if it does 933 * not exist. Will not return <code>null</code>. 934 * 935 * <p> 936 * <b>Definition:</b> 937 * Vaccine that pertains to the recommendation 938 * </p> 939 */ 940 public CodeableConceptDt getVaccineCode() { 941 if (myVaccineCode == null) { 942 myVaccineCode = new CodeableConceptDt(); 943 } 944 return myVaccineCode; 945 } 946 947 /** 948 * Sets the value(s) for <b>vaccineCode</b> () 949 * 950 * <p> 951 * <b>Definition:</b> 952 * Vaccine that pertains to the recommendation 953 * </p> 954 */ 955 public Recommendation setVaccineCode(CodeableConceptDt theValue) { 956 myVaccineCode = theValue; 957 return this; 958 } 959 960 961 962 963 /** 964 * Gets the value(s) for <b>doseNumber</b> (). 965 * creating it if it does 966 * not exist. Will not return <code>null</code>. 967 * 968 * <p> 969 * <b>Definition:</b> 970 * This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 971 * </p> 972 */ 973 public PositiveIntDt getDoseNumberElement() { 974 if (myDoseNumber == null) { 975 myDoseNumber = new PositiveIntDt(); 976 } 977 return myDoseNumber; 978 } 979 980 981 /** 982 * Gets the value(s) for <b>doseNumber</b> (). 983 * creating it if it does 984 * not exist. Will not return <code>null</code>. 985 * 986 * <p> 987 * <b>Definition:</b> 988 * This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 989 * </p> 990 */ 991 public Integer getDoseNumber() { 992 return getDoseNumberElement().getValue(); 993 } 994 995 /** 996 * Sets the value(s) for <b>doseNumber</b> () 997 * 998 * <p> 999 * <b>Definition:</b> 1000 * This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 1001 * </p> 1002 */ 1003 public Recommendation setDoseNumber(PositiveIntDt theValue) { 1004 myDoseNumber = theValue; 1005 return this; 1006 } 1007 1008 1009 1010 /** 1011 * Sets the value for <b>doseNumber</b> () 1012 * 1013 * <p> 1014 * <b>Definition:</b> 1015 * This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 1016 * </p> 1017 */ 1018 public Recommendation setDoseNumber( int theInteger) { 1019 myDoseNumber = new PositiveIntDt(theInteger); 1020 return this; 1021 } 1022 1023 1024 /** 1025 * Gets the value(s) for <b>forecastStatus</b> (). 1026 * creating it if it does 1027 * not exist. Will not return <code>null</code>. 1028 * 1029 * <p> 1030 * <b>Definition:</b> 1031 * Vaccine administration status 1032 * </p> 1033 */ 1034 public BoundCodeableConceptDt<ImmunizationRecommendationStatusCodesEnum> getForecastStatus() { 1035 if (myForecastStatus == null) { 1036 myForecastStatus = new BoundCodeableConceptDt<ImmunizationRecommendationStatusCodesEnum>(ImmunizationRecommendationStatusCodesEnum.VALUESET_BINDER); 1037 } 1038 return myForecastStatus; 1039 } 1040 1041 /** 1042 * Sets the value(s) for <b>forecastStatus</b> () 1043 * 1044 * <p> 1045 * <b>Definition:</b> 1046 * Vaccine administration status 1047 * </p> 1048 */ 1049 public Recommendation setForecastStatus(BoundCodeableConceptDt<ImmunizationRecommendationStatusCodesEnum> theValue) { 1050 myForecastStatus = theValue; 1051 return this; 1052 } 1053 1054 1055 1056 /** 1057 * Sets the value(s) for <b>forecastStatus</b> () 1058 * 1059 * <p> 1060 * <b>Definition:</b> 1061 * Vaccine administration status 1062 * </p> 1063 */ 1064 public Recommendation setForecastStatus(ImmunizationRecommendationStatusCodesEnum theValue) { 1065 setForecastStatus(new BoundCodeableConceptDt<ImmunizationRecommendationStatusCodesEnum>(ImmunizationRecommendationStatusCodesEnum.VALUESET_BINDER, theValue)); 1066 1067/* 1068 getForecastStatus().setValueAsEnum(theValue); 1069*/ 1070 return this; 1071 } 1072 1073 1074 /** 1075 * Gets the value(s) for <b>dateCriterion</b> (). 1076 * creating it if it does 1077 * not exist. Will not return <code>null</code>. 1078 * 1079 * <p> 1080 * <b>Definition:</b> 1081 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1082 * </p> 1083 */ 1084 public java.util.List<RecommendationDateCriterion> getDateCriterion() { 1085 if (myDateCriterion == null) { 1086 myDateCriterion = new java.util.ArrayList<RecommendationDateCriterion>(); 1087 } 1088 return myDateCriterion; 1089 } 1090 1091 /** 1092 * Sets the value(s) for <b>dateCriterion</b> () 1093 * 1094 * <p> 1095 * <b>Definition:</b> 1096 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1097 * </p> 1098 */ 1099 public Recommendation setDateCriterion(java.util.List<RecommendationDateCriterion> theValue) { 1100 myDateCriterion = theValue; 1101 return this; 1102 } 1103 1104 1105 1106 /** 1107 * Adds and returns a new value for <b>dateCriterion</b> () 1108 * 1109 * <p> 1110 * <b>Definition:</b> 1111 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1112 * </p> 1113 */ 1114 public RecommendationDateCriterion addDateCriterion() { 1115 RecommendationDateCriterion newType = new RecommendationDateCriterion(); 1116 getDateCriterion().add(newType); 1117 return newType; 1118 } 1119 1120 /** 1121 * Adds a given new value for <b>dateCriterion</b> () 1122 * 1123 * <p> 1124 * <b>Definition:</b> 1125 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1126 * </p> 1127 * @param theValue The dateCriterion to add (must not be <code>null</code>) 1128 */ 1129 public Recommendation addDateCriterion(RecommendationDateCriterion theValue) { 1130 if (theValue == null) { 1131 throw new NullPointerException("theValue must not be null"); 1132 } 1133 getDateCriterion().add(theValue); 1134 return this; 1135 } 1136 1137 /** 1138 * Gets the first repetition for <b>dateCriterion</b> (), 1139 * creating it if it does not already exist. 1140 * 1141 * <p> 1142 * <b>Definition:</b> 1143 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1144 * </p> 1145 */ 1146 public RecommendationDateCriterion getDateCriterionFirstRep() { 1147 if (getDateCriterion().isEmpty()) { 1148 return addDateCriterion(); 1149 } 1150 return getDateCriterion().get(0); 1151 } 1152 1153 /** 1154 * Gets the value(s) for <b>protocol</b> (). 1155 * creating it if it does 1156 * not exist. Will not return <code>null</code>. 1157 * 1158 * <p> 1159 * <b>Definition:</b> 1160 * Contains information about the protocol under which the vaccine was administered 1161 * </p> 1162 */ 1163 public RecommendationProtocol getProtocol() { 1164 if (myProtocol == null) { 1165 myProtocol = new RecommendationProtocol(); 1166 } 1167 return myProtocol; 1168 } 1169 1170 /** 1171 * Sets the value(s) for <b>protocol</b> () 1172 * 1173 * <p> 1174 * <b>Definition:</b> 1175 * Contains information about the protocol under which the vaccine was administered 1176 * </p> 1177 */ 1178 public Recommendation setProtocol(RecommendationProtocol theValue) { 1179 myProtocol = theValue; 1180 return this; 1181 } 1182 1183 1184 1185 1186 /** 1187 * Gets the value(s) for <b>supportingImmunization</b> (). 1188 * creating it if it does 1189 * not exist. Will not return <code>null</code>. 1190 * 1191 * <p> 1192 * <b>Definition:</b> 1193 * Immunization event history that supports the status and recommendation 1194 * </p> 1195 */ 1196 public java.util.List<ResourceReferenceDt> getSupportingImmunization() { 1197 if (mySupportingImmunization == null) { 1198 mySupportingImmunization = new java.util.ArrayList<ResourceReferenceDt>(); 1199 } 1200 return mySupportingImmunization; 1201 } 1202 1203 /** 1204 * Sets the value(s) for <b>supportingImmunization</b> () 1205 * 1206 * <p> 1207 * <b>Definition:</b> 1208 * Immunization event history that supports the status and recommendation 1209 * </p> 1210 */ 1211 public Recommendation setSupportingImmunization(java.util.List<ResourceReferenceDt> theValue) { 1212 mySupportingImmunization = theValue; 1213 return this; 1214 } 1215 1216 1217 1218 /** 1219 * Adds and returns a new value for <b>supportingImmunization</b> () 1220 * 1221 * <p> 1222 * <b>Definition:</b> 1223 * Immunization event history that supports the status and recommendation 1224 * </p> 1225 */ 1226 public ResourceReferenceDt addSupportingImmunization() { 1227 ResourceReferenceDt newType = new ResourceReferenceDt(); 1228 getSupportingImmunization().add(newType); 1229 return newType; 1230 } 1231 1232 /** 1233 * Gets the value(s) for <b>supportingPatientInformation</b> (). 1234 * creating it if it does 1235 * not exist. Will not return <code>null</code>. 1236 * 1237 * <p> 1238 * <b>Definition:</b> 1239 * Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information. 1240 * </p> 1241 */ 1242 public java.util.List<ResourceReferenceDt> getSupportingPatientInformation() { 1243 if (mySupportingPatientInformation == null) { 1244 mySupportingPatientInformation = new java.util.ArrayList<ResourceReferenceDt>(); 1245 } 1246 return mySupportingPatientInformation; 1247 } 1248 1249 /** 1250 * Sets the value(s) for <b>supportingPatientInformation</b> () 1251 * 1252 * <p> 1253 * <b>Definition:</b> 1254 * Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information. 1255 * </p> 1256 */ 1257 public Recommendation setSupportingPatientInformation(java.util.List<ResourceReferenceDt> theValue) { 1258 mySupportingPatientInformation = theValue; 1259 return this; 1260 } 1261 1262 1263 1264 /** 1265 * Adds and returns a new value for <b>supportingPatientInformation</b> () 1266 * 1267 * <p> 1268 * <b>Definition:</b> 1269 * Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information. 1270 * </p> 1271 */ 1272 public ResourceReferenceDt addSupportingPatientInformation() { 1273 ResourceReferenceDt newType = new ResourceReferenceDt(); 1274 getSupportingPatientInformation().add(newType); 1275 return newType; 1276 } 1277 1278 1279 1280 } 1281 1282 /** 1283 * Block class for child element: <b>ImmunizationRecommendation.recommendation.dateCriterion</b> () 1284 * 1285 * <p> 1286 * <b>Definition:</b> 1287 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 1288 * </p> 1289 */ 1290 @Block() 1291 public static class RecommendationDateCriterion 1292 extends BaseIdentifiableElement implements IResourceBlock { 1293 1294 @Child(name="code", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=false, modifier=false) 1295 @Description( 1296 shortDefinition="", 1297 formalDefinition="Date classification of recommendation. For example, earliest date to give, latest date to give, etc." 1298 ) 1299 private BoundCodeableConceptDt<ImmunizationRecommendationDateCriterionCodesEnum> myCode; 1300 1301 @Child(name="value", type=DateTimeDt.class, order=1, min=1, max=1, summary=false, modifier=false) 1302 @Description( 1303 shortDefinition="", 1304 formalDefinition="The date whose meaning is specified by dateCriterion.code" 1305 ) 1306 private DateTimeDt myValue; 1307 1308 1309 @Override 1310 public boolean isEmpty() { 1311 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myValue); 1312 } 1313 1314 @Override 1315 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1316 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myValue); 1317 } 1318 1319 /** 1320 * Gets the value(s) for <b>code</b> (). 1321 * creating it if it does 1322 * not exist. Will not return <code>null</code>. 1323 * 1324 * <p> 1325 * <b>Definition:</b> 1326 * Date classification of recommendation. For example, earliest date to give, latest date to give, etc. 1327 * </p> 1328 */ 1329 public BoundCodeableConceptDt<ImmunizationRecommendationDateCriterionCodesEnum> getCode() { 1330 if (myCode == null) { 1331 myCode = new BoundCodeableConceptDt<ImmunizationRecommendationDateCriterionCodesEnum>(ImmunizationRecommendationDateCriterionCodesEnum.VALUESET_BINDER); 1332 } 1333 return myCode; 1334 } 1335 1336 /** 1337 * Sets the value(s) for <b>code</b> () 1338 * 1339 * <p> 1340 * <b>Definition:</b> 1341 * Date classification of recommendation. For example, earliest date to give, latest date to give, etc. 1342 * </p> 1343 */ 1344 public RecommendationDateCriterion setCode(BoundCodeableConceptDt<ImmunizationRecommendationDateCriterionCodesEnum> theValue) { 1345 myCode = theValue; 1346 return this; 1347 } 1348 1349 1350 1351 /** 1352 * Sets the value(s) for <b>code</b> () 1353 * 1354 * <p> 1355 * <b>Definition:</b> 1356 * Date classification of recommendation. For example, earliest date to give, latest date to give, etc. 1357 * </p> 1358 */ 1359 public RecommendationDateCriterion setCode(ImmunizationRecommendationDateCriterionCodesEnum theValue) { 1360 setCode(new BoundCodeableConceptDt<ImmunizationRecommendationDateCriterionCodesEnum>(ImmunizationRecommendationDateCriterionCodesEnum.VALUESET_BINDER, theValue)); 1361 1362/* 1363 getCode().setValueAsEnum(theValue); 1364*/ 1365 return this; 1366 } 1367 1368 1369 /** 1370 * Gets the value(s) for <b>value</b> (). 1371 * creating it if it does 1372 * not exist. Will not return <code>null</code>. 1373 * 1374 * <p> 1375 * <b>Definition:</b> 1376 * The date whose meaning is specified by dateCriterion.code 1377 * </p> 1378 */ 1379 public DateTimeDt getValueElement() { 1380 if (myValue == null) { 1381 myValue = new DateTimeDt(); 1382 } 1383 return myValue; 1384 } 1385 1386 1387 /** 1388 * Gets the value(s) for <b>value</b> (). 1389 * creating it if it does 1390 * not exist. Will not return <code>null</code>. 1391 * 1392 * <p> 1393 * <b>Definition:</b> 1394 * The date whose meaning is specified by dateCriterion.code 1395 * </p> 1396 */ 1397 public Date getValue() { 1398 return getValueElement().getValue(); 1399 } 1400 1401 /** 1402 * Sets the value(s) for <b>value</b> () 1403 * 1404 * <p> 1405 * <b>Definition:</b> 1406 * The date whose meaning is specified by dateCriterion.code 1407 * </p> 1408 */ 1409 public RecommendationDateCriterion setValue(DateTimeDt theValue) { 1410 myValue = theValue; 1411 return this; 1412 } 1413 1414 1415 1416 /** 1417 * Sets the value for <b>value</b> () 1418 * 1419 * <p> 1420 * <b>Definition:</b> 1421 * The date whose meaning is specified by dateCriterion.code 1422 * </p> 1423 */ 1424 public RecommendationDateCriterion setValue( Date theDate, TemporalPrecisionEnum thePrecision) { 1425 myValue = new DateTimeDt(theDate, thePrecision); 1426 return this; 1427 } 1428 1429 /** 1430 * Sets the value for <b>value</b> () 1431 * 1432 * <p> 1433 * <b>Definition:</b> 1434 * The date whose meaning is specified by dateCriterion.code 1435 * </p> 1436 */ 1437 public RecommendationDateCriterion setValueWithSecondsPrecision( Date theDate) { 1438 myValue = new DateTimeDt(theDate); 1439 return this; 1440 } 1441 1442 1443 1444 1445 } 1446 1447 1448 /** 1449 * Block class for child element: <b>ImmunizationRecommendation.recommendation.protocol</b> () 1450 * 1451 * <p> 1452 * <b>Definition:</b> 1453 * Contains information about the protocol under which the vaccine was administered 1454 * </p> 1455 */ 1456 @Block() 1457 public static class RecommendationProtocol 1458 extends BaseIdentifiableElement implements IResourceBlock { 1459 1460 @Child(name="doseSequence", type=IntegerDt.class, order=0, min=0, max=1, summary=false, modifier=false) 1461 @Description( 1462 shortDefinition="", 1463 formalDefinition="Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol." 1464 ) 1465 private IntegerDt myDoseSequence; 1466 1467 @Child(name="description", type=StringDt.class, order=1, min=0, max=1, summary=false, modifier=false) 1468 @Description( 1469 shortDefinition="", 1470 formalDefinition="Contains the description about the protocol under which the vaccine was administered" 1471 ) 1472 private StringDt myDescription; 1473 1474 @Child(name="authority", order=2, min=0, max=1, summary=false, modifier=false, type={ 1475 ca.uhn.fhir.model.dstu2.resource.Organization.class }) 1476 @Description( 1477 shortDefinition="", 1478 formalDefinition="Indicates the authority who published the protocol. For example, ACIP" 1479 ) 1480 private ResourceReferenceDt myAuthority; 1481 1482 @Child(name="series", type=StringDt.class, order=3, min=0, max=1, summary=false, modifier=false) 1483 @Description( 1484 shortDefinition="", 1485 formalDefinition="One possible path to achieve presumed immunity against a disease - within the context of an authority" 1486 ) 1487 private StringDt mySeries; 1488 1489 1490 @Override 1491 public boolean isEmpty() { 1492 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myDoseSequence, myDescription, myAuthority, mySeries); 1493 } 1494 1495 @Override 1496 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1497 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myDoseSequence, myDescription, myAuthority, mySeries); 1498 } 1499 1500 /** 1501 * Gets the value(s) for <b>doseSequence</b> (). 1502 * creating it if it does 1503 * not exist. Will not return <code>null</code>. 1504 * 1505 * <p> 1506 * <b>Definition:</b> 1507 * Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 1508 * </p> 1509 */ 1510 public IntegerDt getDoseSequenceElement() { 1511 if (myDoseSequence == null) { 1512 myDoseSequence = new IntegerDt(); 1513 } 1514 return myDoseSequence; 1515 } 1516 1517 1518 /** 1519 * Gets the value(s) for <b>doseSequence</b> (). 1520 * creating it if it does 1521 * not exist. Will not return <code>null</code>. 1522 * 1523 * <p> 1524 * <b>Definition:</b> 1525 * Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 1526 * </p> 1527 */ 1528 public Integer getDoseSequence() { 1529 return getDoseSequenceElement().getValue(); 1530 } 1531 1532 /** 1533 * Sets the value(s) for <b>doseSequence</b> () 1534 * 1535 * <p> 1536 * <b>Definition:</b> 1537 * Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 1538 * </p> 1539 */ 1540 public RecommendationProtocol setDoseSequence(IntegerDt theValue) { 1541 myDoseSequence = theValue; 1542 return this; 1543 } 1544 1545 1546 1547 /** 1548 * Sets the value for <b>doseSequence</b> () 1549 * 1550 * <p> 1551 * <b>Definition:</b> 1552 * Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 1553 * </p> 1554 */ 1555 public RecommendationProtocol setDoseSequence( int theInteger) { 1556 myDoseSequence = new IntegerDt(theInteger); 1557 return this; 1558 } 1559 1560 1561 /** 1562 * Gets the value(s) for <b>description</b> (). 1563 * creating it if it does 1564 * not exist. Will not return <code>null</code>. 1565 * 1566 * <p> 1567 * <b>Definition:</b> 1568 * Contains the description about the protocol under which the vaccine was administered 1569 * </p> 1570 */ 1571 public StringDt getDescriptionElement() { 1572 if (myDescription == null) { 1573 myDescription = new StringDt(); 1574 } 1575 return myDescription; 1576 } 1577 1578 1579 /** 1580 * Gets the value(s) for <b>description</b> (). 1581 * creating it if it does 1582 * not exist. Will not return <code>null</code>. 1583 * 1584 * <p> 1585 * <b>Definition:</b> 1586 * Contains the description about the protocol under which the vaccine was administered 1587 * </p> 1588 */ 1589 public String getDescription() { 1590 return getDescriptionElement().getValue(); 1591 } 1592 1593 /** 1594 * Sets the value(s) for <b>description</b> () 1595 * 1596 * <p> 1597 * <b>Definition:</b> 1598 * Contains the description about the protocol under which the vaccine was administered 1599 * </p> 1600 */ 1601 public RecommendationProtocol setDescription(StringDt theValue) { 1602 myDescription = theValue; 1603 return this; 1604 } 1605 1606 1607 1608 /** 1609 * Sets the value for <b>description</b> () 1610 * 1611 * <p> 1612 * <b>Definition:</b> 1613 * Contains the description about the protocol under which the vaccine was administered 1614 * </p> 1615 */ 1616 public RecommendationProtocol setDescription( String theString) { 1617 myDescription = new StringDt(theString); 1618 return this; 1619 } 1620 1621 1622 /** 1623 * Gets the value(s) for <b>authority</b> (). 1624 * creating it if it does 1625 * not exist. Will not return <code>null</code>. 1626 * 1627 * <p> 1628 * <b>Definition:</b> 1629 * Indicates the authority who published the protocol. For example, ACIP 1630 * </p> 1631 */ 1632 public ResourceReferenceDt getAuthority() { 1633 if (myAuthority == null) { 1634 myAuthority = new ResourceReferenceDt(); 1635 } 1636 return myAuthority; 1637 } 1638 1639 /** 1640 * Sets the value(s) for <b>authority</b> () 1641 * 1642 * <p> 1643 * <b>Definition:</b> 1644 * Indicates the authority who published the protocol. For example, ACIP 1645 * </p> 1646 */ 1647 public RecommendationProtocol setAuthority(ResourceReferenceDt theValue) { 1648 myAuthority = theValue; 1649 return this; 1650 } 1651 1652 1653 1654 1655 /** 1656 * Gets the value(s) for <b>series</b> (). 1657 * creating it if it does 1658 * not exist. Will not return <code>null</code>. 1659 * 1660 * <p> 1661 * <b>Definition:</b> 1662 * One possible path to achieve presumed immunity against a disease - within the context of an authority 1663 * </p> 1664 */ 1665 public StringDt getSeriesElement() { 1666 if (mySeries == null) { 1667 mySeries = new StringDt(); 1668 } 1669 return mySeries; 1670 } 1671 1672 1673 /** 1674 * Gets the value(s) for <b>series</b> (). 1675 * creating it if it does 1676 * not exist. Will not return <code>null</code>. 1677 * 1678 * <p> 1679 * <b>Definition:</b> 1680 * One possible path to achieve presumed immunity against a disease - within the context of an authority 1681 * </p> 1682 */ 1683 public String getSeries() { 1684 return getSeriesElement().getValue(); 1685 } 1686 1687 /** 1688 * Sets the value(s) for <b>series</b> () 1689 * 1690 * <p> 1691 * <b>Definition:</b> 1692 * One possible path to achieve presumed immunity against a disease - within the context of an authority 1693 * </p> 1694 */ 1695 public RecommendationProtocol setSeries(StringDt theValue) { 1696 mySeries = theValue; 1697 return this; 1698 } 1699 1700 1701 1702 /** 1703 * Sets the value for <b>series</b> () 1704 * 1705 * <p> 1706 * <b>Definition:</b> 1707 * One possible path to achieve presumed immunity against a disease - within the context of an authority 1708 * </p> 1709 */ 1710 public RecommendationProtocol setSeries( String theString) { 1711 mySeries = new StringDt(theString); 1712 return this; 1713 } 1714 1715 1716 1717 1718 } 1719 1720 1721 1722 1723 1724 @Override 1725 public String getResourceName() { 1726 return "ImmunizationRecommendation"; 1727 } 1728 1729 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1730 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1731 } 1732 1733 1734}