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>Goal</b> Resource 320 * (clinical.careprovision) 321 * 322 * <p> 323 * <b>Definition:</b> 324 * Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc. 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/Goal">http://hl7.org/fhir/profiles/Goal</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="Goal", profile="http://hl7.org/fhir/profiles/Goal", id="goal") 339public class Goal extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>patient</b> 344 * <p> 345 * Description: <b></b><br> 346 * Type: <b>reference</b><br> 347 * Path: <b>Goal.subject</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="patient", path="Goal.subject", description="", type="reference" ) 351 public static final String SP_PATIENT = "patient"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 355 * <p> 356 * Description: <b></b><br> 357 * Type: <b>reference</b><br> 358 * Path: <b>Goal.subject</b><br> 359 * </p> 360 */ 361 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 362 363 /** 364 * Search parameter constant for <b>subject</b> 365 * <p> 366 * Description: <b></b><br> 367 * Type: <b>reference</b><br> 368 * Path: <b>Goal.subject</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="subject", path="Goal.subject", description="", type="reference" ) 372 public static final String SP_SUBJECT = "subject"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 376 * <p> 377 * Description: <b></b><br> 378 * Type: <b>reference</b><br> 379 * Path: <b>Goal.subject</b><br> 380 * </p> 381 */ 382 public static final ReferenceClientParam SUBJECT = new ReferenceClientParam(SP_SUBJECT); 383 384 /** 385 * Search parameter constant for <b>category</b> 386 * <p> 387 * Description: <b></b><br> 388 * Type: <b>token</b><br> 389 * Path: <b>Goal.category</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="category", path="Goal.category", description="", type="token" ) 393 public static final String SP_CATEGORY = "category"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>category</b> 397 * <p> 398 * Description: <b></b><br> 399 * Type: <b>token</b><br> 400 * Path: <b>Goal.category</b><br> 401 * </p> 402 */ 403 public static final TokenClientParam CATEGORY = new TokenClientParam(SP_CATEGORY); 404 405 /** 406 * Search parameter constant for <b>targetdate</b> 407 * <p> 408 * Description: <b></b><br> 409 * Type: <b>date</b><br> 410 * Path: <b>Goal.targetDate</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="targetdate", path="Goal.targetDate", description="", type="date" ) 414 public static final String SP_TARGETDATE = "targetdate"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>targetdate</b> 418 * <p> 419 * Description: <b></b><br> 420 * Type: <b>date</b><br> 421 * Path: <b>Goal.targetDate</b><br> 422 * </p> 423 */ 424 public static final DateClientParam TARGETDATE = new DateClientParam(SP_TARGETDATE); 425 426 /** 427 * Search parameter constant for <b>identifier</b> 428 * <p> 429 * Description: <b></b><br> 430 * Type: <b>token</b><br> 431 * Path: <b>Goal.identifier</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="identifier", path="Goal.identifier", description="", type="token" ) 435 public static final String SP_IDENTIFIER = "identifier"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 439 * <p> 440 * Description: <b></b><br> 441 * Type: <b>token</b><br> 442 * Path: <b>Goal.identifier</b><br> 443 * </p> 444 */ 445 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 446 447 /** 448 * Search parameter constant for <b>status</b> 449 * <p> 450 * Description: <b></b><br> 451 * Type: <b>token</b><br> 452 * Path: <b>Goal.status</b><br> 453 * </p> 454 */ 455 @SearchParamDefinition(name="status", path="Goal.status", description="", type="token" ) 456 public static final String SP_STATUS = "status"; 457 458 /** 459 * <b>Fluent Client</b> search parameter constant for <b>status</b> 460 * <p> 461 * Description: <b></b><br> 462 * Type: <b>token</b><br> 463 * Path: <b>Goal.status</b><br> 464 * </p> 465 */ 466 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 467 468 469 /** 470 * Constant for fluent queries to be used to add include statements. Specifies 471 * the path value of "<b>Goal:patient</b>". 472 */ 473 public static final Include INCLUDE_PATIENT = new Include("Goal:patient"); 474 475 /** 476 * Constant for fluent queries to be used to add include statements. Specifies 477 * the path value of "<b>Goal:subject</b>". 478 */ 479 public static final Include INCLUDE_SUBJECT = new Include("Goal:subject"); 480 481 482 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 483 @Description( 484 shortDefinition="id", 485 formalDefinition="This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation)" 486 ) 487 private java.util.List<IdentifierDt> myIdentifier; 488 489 @Child(name="subject", order=1, min=0, max=1, summary=true, modifier=false, type={ 490 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Group.class, ca.uhn.fhir.model.dstu2.resource.Organization.class }) 491 @Description( 492 shortDefinition="who.focus", 493 formalDefinition="Identifies the patient, group or organization for whom the goal is being established." 494 ) 495 private ResourceReferenceDt mySubject; 496 497 @Child(name="start", order=2, min=0, max=1, summary=true, modifier=false, type={ 498 DateDt.class, CodeableConceptDt.class }) 499 @Description( 500 shortDefinition="", 501 formalDefinition="The date or event after which the goal should begin being pursued" 502 ) 503 private IDatatype myStart; 504 505 @Child(name="target", order=3, min=0, max=1, summary=true, modifier=false, type={ 506 DateDt.class, DurationDt.class }) 507 @Description( 508 shortDefinition="", 509 formalDefinition="Indicates either the date or the duration after start by which the goal should be met" 510 ) 511 private IDatatype myTarget; 512 513 @Child(name="category", type=CodeableConceptDt.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 514 @Description( 515 shortDefinition="", 516 formalDefinition="Indicates a category the goal falls within" 517 ) 518 private java.util.List<BoundCodeableConceptDt<GoalCategoryEnum>> myCategory; 519 520 @Child(name="description", type=StringDt.class, order=5, min=1, max=1, summary=true, modifier=false) 521 @Description( 522 shortDefinition="", 523 formalDefinition="Human-readable description of a specific desired objective of care." 524 ) 525 private StringDt myDescription; 526 527 @Child(name="status", type=CodeDt.class, order=6, min=1, max=1, summary=true, modifier=true) 528 @Description( 529 shortDefinition="status", 530 formalDefinition="Indicates whether the goal has been reached and is still considered relevant" 531 ) 532 private BoundCodeDt<GoalStatusEnum> myStatus; 533 534 @Child(name="statusDate", type=DateDt.class, order=7, min=0, max=1, summary=true, modifier=false) 535 @Description( 536 shortDefinition="when.recorded", 537 formalDefinition="Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc." 538 ) 539 private DateDt myStatusDate; 540 541 @Child(name="statusReason", type=CodeableConceptDt.class, order=8, min=0, max=1, summary=false, modifier=false) 542 @Description( 543 shortDefinition="", 544 formalDefinition="Captures the reason for the current status." 545 ) 546 private BoundCodeableConceptDt<GoalStatusReasonEnum> myStatusReason; 547 548 @Child(name="author", order=9, min=0, max=1, summary=true, modifier=false, type={ 549 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.RelatedPerson.class }) 550 @Description( 551 shortDefinition="who.actor", 552 formalDefinition="Indicates whose goal this is - patient goal, practitioner goal, etc." 553 ) 554 private ResourceReferenceDt myAuthor; 555 556 @Child(name="priority", type=CodeableConceptDt.class, order=10, min=0, max=1, summary=true, modifier=false) 557 @Description( 558 shortDefinition="", 559 formalDefinition="Identifies the mutually agreed level of importance associated with reaching/sustaining the goal" 560 ) 561 private BoundCodeableConceptDt<GoalPriorityEnum> myPriority; 562 563 @Child(name="addresses", order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 564 ca.uhn.fhir.model.dstu2.resource.Condition.class, ca.uhn.fhir.model.dstu2.resource.Observation.class, ca.uhn.fhir.model.dstu2.resource.MedicationStatement.class, ca.uhn.fhir.model.dstu2.resource.NutritionOrder.class, ca.uhn.fhir.model.dstu2.resource.ProcedureRequest.class, ca.uhn.fhir.model.dstu2.resource.RiskAssessment.class }) 565 @Description( 566 shortDefinition="", 567 formalDefinition="The identified conditions and other health record elements that are intended to be addressed by the goal" 568 ) 569 private java.util.List<ResourceReferenceDt> myAddresses; 570 571 @Child(name="note", type=AnnotationDt.class, order=12, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 572 @Description( 573 shortDefinition="", 574 formalDefinition="Any comments related to the goal" 575 ) 576 private java.util.List<AnnotationDt> myNote; 577 578 @Child(name="outcome", order=13, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 579 @Description( 580 shortDefinition="", 581 formalDefinition="Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved." 582 ) 583 private java.util.List<Outcome> myOutcome; 584 585 586 @Override 587 public boolean isEmpty() { 588 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, mySubject, myStart, myTarget, myCategory, myDescription, myStatus, myStatusDate, myStatusReason, myAuthor, myPriority, myAddresses, myNote, myOutcome); 589 } 590 591 @Override 592 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 593 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, mySubject, myStart, myTarget, myCategory, myDescription, myStatus, myStatusDate, myStatusReason, myAuthor, myPriority, myAddresses, myNote, myOutcome); 594 } 595 596 /** 597 * Gets the value(s) for <b>identifier</b> (id). 598 * creating it if it does 599 * not exist. Will not return <code>null</code>. 600 * 601 * <p> 602 * <b>Definition:</b> 603 * This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) 604 * </p> 605 */ 606 public java.util.List<IdentifierDt> getIdentifier() { 607 if (myIdentifier == null) { 608 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 609 } 610 return myIdentifier; 611 } 612 613 /** 614 * Sets the value(s) for <b>identifier</b> (id) 615 * 616 * <p> 617 * <b>Definition:</b> 618 * This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) 619 * </p> 620 */ 621 public Goal setIdentifier(java.util.List<IdentifierDt> theValue) { 622 myIdentifier = theValue; 623 return this; 624 } 625 626 627 628 /** 629 * Adds and returns a new value for <b>identifier</b> (id) 630 * 631 * <p> 632 * <b>Definition:</b> 633 * This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) 634 * </p> 635 */ 636 public IdentifierDt addIdentifier() { 637 IdentifierDt newType = new IdentifierDt(); 638 getIdentifier().add(newType); 639 return newType; 640 } 641 642 /** 643 * Adds a given new value for <b>identifier</b> (id) 644 * 645 * <p> 646 * <b>Definition:</b> 647 * This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) 648 * </p> 649 * @param theValue The identifier to add (must not be <code>null</code>) 650 */ 651 public Goal addIdentifier(IdentifierDt theValue) { 652 if (theValue == null) { 653 throw new NullPointerException("theValue must not be null"); 654 } 655 getIdentifier().add(theValue); 656 return this; 657 } 658 659 /** 660 * Gets the first repetition for <b>identifier</b> (id), 661 * creating it if it does not already exist. 662 * 663 * <p> 664 * <b>Definition:</b> 665 * This records identifiers associated with this care plan that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation) 666 * </p> 667 */ 668 public IdentifierDt getIdentifierFirstRep() { 669 if (getIdentifier().isEmpty()) { 670 return addIdentifier(); 671 } 672 return getIdentifier().get(0); 673 } 674 675 /** 676 * Gets the value(s) for <b>subject</b> (who.focus). 677 * creating it if it does 678 * not exist. Will not return <code>null</code>. 679 * 680 * <p> 681 * <b>Definition:</b> 682 * Identifies the patient, group or organization for whom the goal is being established. 683 * </p> 684 */ 685 public ResourceReferenceDt getSubject() { 686 if (mySubject == null) { 687 mySubject = new ResourceReferenceDt(); 688 } 689 return mySubject; 690 } 691 692 /** 693 * Sets the value(s) for <b>subject</b> (who.focus) 694 * 695 * <p> 696 * <b>Definition:</b> 697 * Identifies the patient, group or organization for whom the goal is being established. 698 * </p> 699 */ 700 public Goal setSubject(ResourceReferenceDt theValue) { 701 mySubject = theValue; 702 return this; 703 } 704 705 706 707 708 /** 709 * Gets the value(s) for <b>start[x]</b> (). 710 * creating it if it does 711 * not exist. Will not return <code>null</code>. 712 * 713 * <p> 714 * <b>Definition:</b> 715 * The date or event after which the goal should begin being pursued 716 * </p> 717 */ 718 public IDatatype getStart() { 719 return myStart; 720 } 721 722 /** 723 * Sets the value(s) for <b>start[x]</b> () 724 * 725 * <p> 726 * <b>Definition:</b> 727 * The date or event after which the goal should begin being pursued 728 * </p> 729 */ 730 public Goal setStart(IDatatype theValue) { 731 myStart = theValue; 732 return this; 733 } 734 735 736 737 738 /** 739 * Gets the value(s) for <b>target[x]</b> (). 740 * creating it if it does 741 * not exist. Will not return <code>null</code>. 742 * 743 * <p> 744 * <b>Definition:</b> 745 * Indicates either the date or the duration after start by which the goal should be met 746 * </p> 747 */ 748 public IDatatype getTarget() { 749 return myTarget; 750 } 751 752 /** 753 * Sets the value(s) for <b>target[x]</b> () 754 * 755 * <p> 756 * <b>Definition:</b> 757 * Indicates either the date or the duration after start by which the goal should be met 758 * </p> 759 */ 760 public Goal setTarget(IDatatype theValue) { 761 myTarget = theValue; 762 return this; 763 } 764 765 766 767 768 /** 769 * Gets the value(s) for <b>category</b> (). 770 * creating it if it does 771 * not exist. Will not return <code>null</code>. 772 * 773 * <p> 774 * <b>Definition:</b> 775 * Indicates a category the goal falls within 776 * </p> 777 */ 778 public java.util.List<BoundCodeableConceptDt<GoalCategoryEnum>> getCategory() { 779 if (myCategory == null) { 780 myCategory = new java.util.ArrayList<BoundCodeableConceptDt<GoalCategoryEnum>>(); 781 } 782 return myCategory; 783 } 784 785 /** 786 * Sets the value(s) for <b>category</b> () 787 * 788 * <p> 789 * <b>Definition:</b> 790 * Indicates a category the goal falls within 791 * </p> 792 */ 793 public Goal setCategory(java.util.List<BoundCodeableConceptDt<GoalCategoryEnum>> theValue) { 794 myCategory = theValue; 795 return this; 796 } 797 798 799 800 /** 801 * Add a value for <b>category</b> () using an enumerated type. This 802 * is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory 803 * or contain the desirable codes. If you wish to use codes other than those which are built-in, 804 * you may also use the {@link #addCategory()} method. 805 * 806 * <p> 807 * <b>Definition:</b> 808 * Indicates a category the goal falls within 809 * </p> 810 */ 811 public BoundCodeableConceptDt<GoalCategoryEnum> addCategory(GoalCategoryEnum theValue) { 812 BoundCodeableConceptDt<GoalCategoryEnum> retVal = new BoundCodeableConceptDt<GoalCategoryEnum>(GoalCategoryEnum.VALUESET_BINDER, theValue); 813 getCategory().add(retVal); 814 return retVal; 815 } 816 817 /** 818 * Gets the first repetition for <b>category</b> (), 819 * creating it if it does not already exist. 820 * 821 * <p> 822 * <b>Definition:</b> 823 * Indicates a category the goal falls within 824 * </p> 825 */ 826 public BoundCodeableConceptDt<GoalCategoryEnum> getCategoryFirstRep() { 827 if (getCategory().size() == 0) { 828 addCategory(); 829 } 830 return getCategory().get(0); 831 } 832 833 /** 834 * Add a value for <b>category</b> () 835 * 836 * <p> 837 * <b>Definition:</b> 838 * Indicates a category the goal falls within 839 * </p> 840 */ 841 public BoundCodeableConceptDt<GoalCategoryEnum> addCategory() { 842 BoundCodeableConceptDt<GoalCategoryEnum> retVal = new BoundCodeableConceptDt<GoalCategoryEnum>(GoalCategoryEnum.VALUESET_BINDER); 843 getCategory().add(retVal); 844 return retVal; 845 } 846 847 /** 848 * Sets the value(s), and clears any existing value(s) for <b>category</b> () 849 * 850 * <p> 851 * <b>Definition:</b> 852 * Indicates a category the goal falls within 853 * </p> 854 */ 855 public Goal setCategory(GoalCategoryEnum theValue) { 856 getCategory().clear(); 857 addCategory(theValue); 858 return this; 859 } 860 861 862 /** 863 * Gets the value(s) for <b>description</b> (). 864 * creating it if it does 865 * not exist. Will not return <code>null</code>. 866 * 867 * <p> 868 * <b>Definition:</b> 869 * Human-readable description of a specific desired objective of care. 870 * </p> 871 */ 872 public StringDt getDescriptionElement() { 873 if (myDescription == null) { 874 myDescription = new StringDt(); 875 } 876 return myDescription; 877 } 878 879 880 /** 881 * Gets the value(s) for <b>description</b> (). 882 * creating it if it does 883 * not exist. Will not return <code>null</code>. 884 * 885 * <p> 886 * <b>Definition:</b> 887 * Human-readable description of a specific desired objective of care. 888 * </p> 889 */ 890 public String getDescription() { 891 return getDescriptionElement().getValue(); 892 } 893 894 /** 895 * Sets the value(s) for <b>description</b> () 896 * 897 * <p> 898 * <b>Definition:</b> 899 * Human-readable description of a specific desired objective of care. 900 * </p> 901 */ 902 public Goal setDescription(StringDt theValue) { 903 myDescription = theValue; 904 return this; 905 } 906 907 908 909 /** 910 * Sets the value for <b>description</b> () 911 * 912 * <p> 913 * <b>Definition:</b> 914 * Human-readable description of a specific desired objective of care. 915 * </p> 916 */ 917 public Goal setDescription( String theString) { 918 myDescription = new StringDt(theString); 919 return this; 920 } 921 922 923 /** 924 * Gets the value(s) for <b>status</b> (status). 925 * creating it if it does 926 * not exist. Will not return <code>null</code>. 927 * 928 * <p> 929 * <b>Definition:</b> 930 * Indicates whether the goal has been reached and is still considered relevant 931 * </p> 932 */ 933 public BoundCodeDt<GoalStatusEnum> getStatusElement() { 934 if (myStatus == null) { 935 myStatus = new BoundCodeDt<GoalStatusEnum>(GoalStatusEnum.VALUESET_BINDER); 936 } 937 return myStatus; 938 } 939 940 941 /** 942 * Gets the value(s) for <b>status</b> (status). 943 * creating it if it does 944 * not exist. Will not return <code>null</code>. 945 * 946 * <p> 947 * <b>Definition:</b> 948 * Indicates whether the goal has been reached and is still considered relevant 949 * </p> 950 */ 951 public String getStatus() { 952 return getStatusElement().getValue(); 953 } 954 955 /** 956 * Sets the value(s) for <b>status</b> (status) 957 * 958 * <p> 959 * <b>Definition:</b> 960 * Indicates whether the goal has been reached and is still considered relevant 961 * </p> 962 */ 963 public Goal setStatus(BoundCodeDt<GoalStatusEnum> theValue) { 964 myStatus = theValue; 965 return this; 966 } 967 968 969 970 /** 971 * Sets the value(s) for <b>status</b> (status) 972 * 973 * <p> 974 * <b>Definition:</b> 975 * Indicates whether the goal has been reached and is still considered relevant 976 * </p> 977 */ 978 public Goal setStatus(GoalStatusEnum theValue) { 979 setStatus(new BoundCodeDt<GoalStatusEnum>(GoalStatusEnum.VALUESET_BINDER, theValue)); 980 981/* 982 getStatusElement().setValueAsEnum(theValue); 983*/ 984 return this; 985 } 986 987 988 /** 989 * Gets the value(s) for <b>statusDate</b> (when.recorded). 990 * creating it if it does 991 * not exist. Will not return <code>null</code>. 992 * 993 * <p> 994 * <b>Definition:</b> 995 * Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc. 996 * </p> 997 */ 998 public DateDt getStatusDateElement() { 999 if (myStatusDate == null) { 1000 myStatusDate = new DateDt(); 1001 } 1002 return myStatusDate; 1003 } 1004 1005 1006 /** 1007 * Gets the value(s) for <b>statusDate</b> (when.recorded). 1008 * creating it if it does 1009 * not exist. Will not return <code>null</code>. 1010 * 1011 * <p> 1012 * <b>Definition:</b> 1013 * Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc. 1014 * </p> 1015 */ 1016 public Date getStatusDate() { 1017 return getStatusDateElement().getValue(); 1018 } 1019 1020 /** 1021 * Sets the value(s) for <b>statusDate</b> (when.recorded) 1022 * 1023 * <p> 1024 * <b>Definition:</b> 1025 * Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc. 1026 * </p> 1027 */ 1028 public Goal setStatusDate(DateDt theValue) { 1029 myStatusDate = theValue; 1030 return this; 1031 } 1032 1033 1034 1035 /** 1036 * Sets the value for <b>statusDate</b> (when.recorded) 1037 * 1038 * <p> 1039 * <b>Definition:</b> 1040 * Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc. 1041 * </p> 1042 */ 1043 public Goal setStatusDate( Date theDate, TemporalPrecisionEnum thePrecision) { 1044 myStatusDate = new DateDt(theDate, thePrecision); 1045 return this; 1046 } 1047 1048 /** 1049 * Sets the value for <b>statusDate</b> (when.recorded) 1050 * 1051 * <p> 1052 * <b>Definition:</b> 1053 * Identifies when the current status. I.e. When initially created, when achieved, when cancelled, etc. 1054 * </p> 1055 */ 1056 public Goal setStatusDateWithDayPrecision( Date theDate) { 1057 myStatusDate = new DateDt(theDate); 1058 return this; 1059 } 1060 1061 1062 /** 1063 * Gets the value(s) for <b>statusReason</b> (). 1064 * creating it if it does 1065 * not exist. Will not return <code>null</code>. 1066 * 1067 * <p> 1068 * <b>Definition:</b> 1069 * Captures the reason for the current status. 1070 * </p> 1071 */ 1072 public BoundCodeableConceptDt<GoalStatusReasonEnum> getStatusReason() { 1073 if (myStatusReason == null) { 1074 myStatusReason = new BoundCodeableConceptDt<GoalStatusReasonEnum>(GoalStatusReasonEnum.VALUESET_BINDER); 1075 } 1076 return myStatusReason; 1077 } 1078 1079 /** 1080 * Sets the value(s) for <b>statusReason</b> () 1081 * 1082 * <p> 1083 * <b>Definition:</b> 1084 * Captures the reason for the current status. 1085 * </p> 1086 */ 1087 public Goal setStatusReason(BoundCodeableConceptDt<GoalStatusReasonEnum> theValue) { 1088 myStatusReason = theValue; 1089 return this; 1090 } 1091 1092 1093 1094 /** 1095 * Sets the value(s) for <b>statusReason</b> () 1096 * 1097 * <p> 1098 * <b>Definition:</b> 1099 * Captures the reason for the current status. 1100 * </p> 1101 */ 1102 public Goal setStatusReason(GoalStatusReasonEnum theValue) { 1103 setStatusReason(new BoundCodeableConceptDt<GoalStatusReasonEnum>(GoalStatusReasonEnum.VALUESET_BINDER, theValue)); 1104 1105/* 1106 getStatusReason().setValueAsEnum(theValue); 1107*/ 1108 return this; 1109 } 1110 1111 1112 /** 1113 * Gets the value(s) for <b>author</b> (who.actor). 1114 * creating it if it does 1115 * not exist. Will not return <code>null</code>. 1116 * 1117 * <p> 1118 * <b>Definition:</b> 1119 * Indicates whose goal this is - patient goal, practitioner goal, etc. 1120 * </p> 1121 */ 1122 public ResourceReferenceDt getAuthor() { 1123 if (myAuthor == null) { 1124 myAuthor = new ResourceReferenceDt(); 1125 } 1126 return myAuthor; 1127 } 1128 1129 /** 1130 * Sets the value(s) for <b>author</b> (who.actor) 1131 * 1132 * <p> 1133 * <b>Definition:</b> 1134 * Indicates whose goal this is - patient goal, practitioner goal, etc. 1135 * </p> 1136 */ 1137 public Goal setAuthor(ResourceReferenceDt theValue) { 1138 myAuthor = theValue; 1139 return this; 1140 } 1141 1142 1143 1144 1145 /** 1146 * Gets the value(s) for <b>priority</b> (). 1147 * creating it if it does 1148 * not exist. Will not return <code>null</code>. 1149 * 1150 * <p> 1151 * <b>Definition:</b> 1152 * Identifies the mutually agreed level of importance associated with reaching/sustaining the goal 1153 * </p> 1154 */ 1155 public BoundCodeableConceptDt<GoalPriorityEnum> getPriority() { 1156 if (myPriority == null) { 1157 myPriority = new BoundCodeableConceptDt<GoalPriorityEnum>(GoalPriorityEnum.VALUESET_BINDER); 1158 } 1159 return myPriority; 1160 } 1161 1162 /** 1163 * Sets the value(s) for <b>priority</b> () 1164 * 1165 * <p> 1166 * <b>Definition:</b> 1167 * Identifies the mutually agreed level of importance associated with reaching/sustaining the goal 1168 * </p> 1169 */ 1170 public Goal setPriority(BoundCodeableConceptDt<GoalPriorityEnum> theValue) { 1171 myPriority = theValue; 1172 return this; 1173 } 1174 1175 1176 1177 /** 1178 * Sets the value(s) for <b>priority</b> () 1179 * 1180 * <p> 1181 * <b>Definition:</b> 1182 * Identifies the mutually agreed level of importance associated with reaching/sustaining the goal 1183 * </p> 1184 */ 1185 public Goal setPriority(GoalPriorityEnum theValue) { 1186 setPriority(new BoundCodeableConceptDt<GoalPriorityEnum>(GoalPriorityEnum.VALUESET_BINDER, theValue)); 1187 1188/* 1189 getPriority().setValueAsEnum(theValue); 1190*/ 1191 return this; 1192 } 1193 1194 1195 /** 1196 * Gets the value(s) for <b>addresses</b> (). 1197 * creating it if it does 1198 * not exist. Will not return <code>null</code>. 1199 * 1200 * <p> 1201 * <b>Definition:</b> 1202 * The identified conditions and other health record elements that are intended to be addressed by the goal 1203 * </p> 1204 */ 1205 public java.util.List<ResourceReferenceDt> getAddresses() { 1206 if (myAddresses == null) { 1207 myAddresses = new java.util.ArrayList<ResourceReferenceDt>(); 1208 } 1209 return myAddresses; 1210 } 1211 1212 /** 1213 * Sets the value(s) for <b>addresses</b> () 1214 * 1215 * <p> 1216 * <b>Definition:</b> 1217 * The identified conditions and other health record elements that are intended to be addressed by the goal 1218 * </p> 1219 */ 1220 public Goal setAddresses(java.util.List<ResourceReferenceDt> theValue) { 1221 myAddresses = theValue; 1222 return this; 1223 } 1224 1225 1226 1227 /** 1228 * Adds and returns a new value for <b>addresses</b> () 1229 * 1230 * <p> 1231 * <b>Definition:</b> 1232 * The identified conditions and other health record elements that are intended to be addressed by the goal 1233 * </p> 1234 */ 1235 public ResourceReferenceDt addAddresses() { 1236 ResourceReferenceDt newType = new ResourceReferenceDt(); 1237 getAddresses().add(newType); 1238 return newType; 1239 } 1240 1241 /** 1242 * Gets the value(s) for <b>note</b> (). 1243 * creating it if it does 1244 * not exist. Will not return <code>null</code>. 1245 * 1246 * <p> 1247 * <b>Definition:</b> 1248 * Any comments related to the goal 1249 * </p> 1250 */ 1251 public java.util.List<AnnotationDt> getNote() { 1252 if (myNote == null) { 1253 myNote = new java.util.ArrayList<AnnotationDt>(); 1254 } 1255 return myNote; 1256 } 1257 1258 /** 1259 * Sets the value(s) for <b>note</b> () 1260 * 1261 * <p> 1262 * <b>Definition:</b> 1263 * Any comments related to the goal 1264 * </p> 1265 */ 1266 public Goal setNote(java.util.List<AnnotationDt> theValue) { 1267 myNote = theValue; 1268 return this; 1269 } 1270 1271 1272 1273 /** 1274 * Adds and returns a new value for <b>note</b> () 1275 * 1276 * <p> 1277 * <b>Definition:</b> 1278 * Any comments related to the goal 1279 * </p> 1280 */ 1281 public AnnotationDt addNote() { 1282 AnnotationDt newType = new AnnotationDt(); 1283 getNote().add(newType); 1284 return newType; 1285 } 1286 1287 /** 1288 * Adds a given new value for <b>note</b> () 1289 * 1290 * <p> 1291 * <b>Definition:</b> 1292 * Any comments related to the goal 1293 * </p> 1294 * @param theValue The note to add (must not be <code>null</code>) 1295 */ 1296 public Goal addNote(AnnotationDt theValue) { 1297 if (theValue == null) { 1298 throw new NullPointerException("theValue must not be null"); 1299 } 1300 getNote().add(theValue); 1301 return this; 1302 } 1303 1304 /** 1305 * Gets the first repetition for <b>note</b> (), 1306 * creating it if it does not already exist. 1307 * 1308 * <p> 1309 * <b>Definition:</b> 1310 * Any comments related to the goal 1311 * </p> 1312 */ 1313 public AnnotationDt getNoteFirstRep() { 1314 if (getNote().isEmpty()) { 1315 return addNote(); 1316 } 1317 return getNote().get(0); 1318 } 1319 1320 /** 1321 * Gets the value(s) for <b>outcome</b> (). 1322 * creating it if it does 1323 * not exist. Will not return <code>null</code>. 1324 * 1325 * <p> 1326 * <b>Definition:</b> 1327 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1328 * </p> 1329 */ 1330 public java.util.List<Outcome> getOutcome() { 1331 if (myOutcome == null) { 1332 myOutcome = new java.util.ArrayList<Outcome>(); 1333 } 1334 return myOutcome; 1335 } 1336 1337 /** 1338 * Sets the value(s) for <b>outcome</b> () 1339 * 1340 * <p> 1341 * <b>Definition:</b> 1342 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1343 * </p> 1344 */ 1345 public Goal setOutcome(java.util.List<Outcome> theValue) { 1346 myOutcome = theValue; 1347 return this; 1348 } 1349 1350 1351 1352 /** 1353 * Adds and returns a new value for <b>outcome</b> () 1354 * 1355 * <p> 1356 * <b>Definition:</b> 1357 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1358 * </p> 1359 */ 1360 public Outcome addOutcome() { 1361 Outcome newType = new Outcome(); 1362 getOutcome().add(newType); 1363 return newType; 1364 } 1365 1366 /** 1367 * Adds a given new value for <b>outcome</b> () 1368 * 1369 * <p> 1370 * <b>Definition:</b> 1371 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1372 * </p> 1373 * @param theValue The outcome to add (must not be <code>null</code>) 1374 */ 1375 public Goal addOutcome(Outcome theValue) { 1376 if (theValue == null) { 1377 throw new NullPointerException("theValue must not be null"); 1378 } 1379 getOutcome().add(theValue); 1380 return this; 1381 } 1382 1383 /** 1384 * Gets the first repetition for <b>outcome</b> (), 1385 * creating it if it does not already exist. 1386 * 1387 * <p> 1388 * <b>Definition:</b> 1389 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1390 * </p> 1391 */ 1392 public Outcome getOutcomeFirstRep() { 1393 if (getOutcome().isEmpty()) { 1394 return addOutcome(); 1395 } 1396 return getOutcome().get(0); 1397 } 1398 1399 /** 1400 * Block class for child element: <b>Goal.outcome</b> () 1401 * 1402 * <p> 1403 * <b>Definition:</b> 1404 * Identifies the change (or lack of change) at the point where the goal was deepmed to be cancelled or achieved. 1405 * </p> 1406 */ 1407 @Block() 1408 public static class Outcome 1409 extends BaseIdentifiableElement implements IResourceBlock { 1410 1411 @Child(name="result", order=0, min=0, max=1, summary=false, modifier=false, type={ 1412 CodeableConceptDt.class, Observation.class }) 1413 @Description( 1414 shortDefinition="", 1415 formalDefinition="Details of what's changed (or not changed)" 1416 ) 1417 private IDatatype myResult; 1418 1419 1420 @Override 1421 public boolean isEmpty() { 1422 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myResult); 1423 } 1424 1425 @Override 1426 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1427 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myResult); 1428 } 1429 1430 /** 1431 * Gets the value(s) for <b>result[x]</b> (). 1432 * creating it if it does 1433 * not exist. Will not return <code>null</code>. 1434 * 1435 * <p> 1436 * <b>Definition:</b> 1437 * Details of what's changed (or not changed) 1438 * </p> 1439 */ 1440 public IDatatype getResult() { 1441 return myResult; 1442 } 1443 1444 /** 1445 * Sets the value(s) for <b>result[x]</b> () 1446 * 1447 * <p> 1448 * <b>Definition:</b> 1449 * Details of what's changed (or not changed) 1450 * </p> 1451 */ 1452 public Outcome setResult(IDatatype theValue) { 1453 myResult = theValue; 1454 return this; 1455 } 1456 1457 1458 1459 1460 1461 1462 } 1463 1464 1465 1466 1467 @Override 1468 public String getResourceName() { 1469 return "Goal"; 1470 } 1471 1472 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1473 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1474 } 1475 1476 1477}