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.composite.AnnotationDt; 042import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 043import ca.uhn.fhir.model.dstu2.resource.Appointment; 044import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 045import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 048import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 049import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 057import ca.uhn.fhir.model.dstu2.resource.BodySite; 058import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 059import ca.uhn.fhir.model.dstu2.resource.CarePlan; 060import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 063import ca.uhn.fhir.model.dstu2.resource.Claim; 064import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 065import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 066import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 067import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 068import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 069import ca.uhn.fhir.model.dstu2.composite.CodingDt; 070import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 071import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 072import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 073import ca.uhn.fhir.model.dstu2.resource.Composition; 074import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 075import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 076import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 077import ca.uhn.fhir.model.dstu2.resource.Condition; 078import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 079import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 082import ca.uhn.fhir.model.dstu2.resource.Conformance; 083import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 085import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 086import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 087import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 088import ca.uhn.fhir.model.dstu2.resource.Contract; 089import ca.uhn.fhir.model.dstu2.resource.Coverage; 090import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 091import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 092import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 093import ca.uhn.fhir.model.dstu2.resource.Device; 094import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 095import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 096import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 097import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 098import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 101import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 102import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 103import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 105import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 106import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 108import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 109import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 110import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 111import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 112import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 113import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 114import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 115import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 116import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 117import ca.uhn.fhir.model.dstu2.resource.Encounter; 118import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 119import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 120import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 121import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 122import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 123import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 124import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 125import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 126import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 127import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 128import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 129import ca.uhn.fhir.model.dstu2.resource.Goal; 130import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 131import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 132import ca.uhn.fhir.model.dstu2.resource.Group; 133import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 134import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 135import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 136import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 137import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 138import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 139import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 140import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 141import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 143import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 144import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 145import ca.uhn.fhir.model.dstu2.resource.Immunization; 146import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 147import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 148import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 149import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 150import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 152import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 153import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 154import ca.uhn.fhir.model.dstu2.resource.Location; 155import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 156import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 157import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 158import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 159import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 160import ca.uhn.fhir.model.dstu2.resource.Media; 161import ca.uhn.fhir.model.dstu2.resource.Medication; 162import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 163import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 164import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 165import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 166import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 167import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 168import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 169import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 170import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 171import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 172import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 175import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 176import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 177import ca.uhn.fhir.model.dstu2.resource.Observation; 178import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 179import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 180import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 181import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 182import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 183import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 184import ca.uhn.fhir.model.dstu2.resource.Order; 185import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.Organization; 187import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 188import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 189import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 190import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 191import ca.uhn.fhir.model.dstu2.resource.Patient; 192import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 193import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 194import ca.uhn.fhir.model.dstu2.resource.Person; 195import ca.uhn.fhir.model.dstu2.resource.Practitioner; 196import ca.uhn.fhir.model.dstu2.resource.Procedure; 197import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 198import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 199import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 200import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 201import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 202import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 203import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 204import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 205import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 206import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 207import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 208import ca.uhn.fhir.model.dstu2.composite.RangeDt; 209import ca.uhn.fhir.model.dstu2.composite.RatioDt; 210import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 211import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 212import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 213import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 214import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 216import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 217import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 218import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 219import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 220import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 221import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 222import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 223import ca.uhn.fhir.model.dstu2.resource.Schedule; 224import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 225import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 226import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 227import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 228import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 229import ca.uhn.fhir.model.dstu2.resource.Slot; 230import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.Specimen; 232import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 233import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 234import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 235import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 236import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 237import ca.uhn.fhir.model.dstu2.resource.Substance; 238import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 239import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 240import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 241import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 242import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 243import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 244import ca.uhn.fhir.model.dstu2.composite.TimingDt; 245import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 247import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 249import ca.uhn.fhir.model.dstu2.resource.ValueSet; 250import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 251import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 252import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 253import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 254import ca.uhn.fhir.model.api.IResource; 255import ca.uhn.fhir.model.dstu2.composite.AgeDt; 256import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 257import ca.uhn.fhir.model.dstu2.composite.DurationDt; 258import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 259import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 260import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 261import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 262import ca.uhn.fhir.model.primitive.Base64BinaryDt; 263import ca.uhn.fhir.model.primitive.BooleanDt; 264import ca.uhn.fhir.model.primitive.BoundCodeDt; 265import ca.uhn.fhir.model.primitive.CodeDt; 266import ca.uhn.fhir.model.primitive.DateDt; 267import ca.uhn.fhir.model.primitive.DateTimeDt; 268import ca.uhn.fhir.model.primitive.DecimalDt; 269import ca.uhn.fhir.model.primitive.IdDt; 270import ca.uhn.fhir.model.primitive.InstantDt; 271import ca.uhn.fhir.model.primitive.IntegerDt; 272import ca.uhn.fhir.model.primitive.OidDt; 273import ca.uhn.fhir.model.primitive.PositiveIntDt; 274import ca.uhn.fhir.model.primitive.StringDt; 275import ca.uhn.fhir.model.primitive.TimeDt; 276import ca.uhn.fhir.model.primitive.UnsignedIntDt; 277import ca.uhn.fhir.model.primitive.UriDt; 278 279 280/** 281 * HAPI/FHIR <b>CarePlan</b> Resource 282 * () 283 * 284 * <p> 285 * <b>Definition:</b> 286 * Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions. 287 * </p> 288 * 289 * <p> 290 * <b>Requirements:</b> 291 * 292 * </p> 293 * 294 * <p> 295 * <b>Profile Definition:</b> 296 * <a href="http://hl7.org/fhir/profiles/CarePlan">http://hl7.org/fhir/profiles/CarePlan</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="CarePlan", profile="http://hl7.org/fhir/profiles/CarePlan", id="careplan") 301public class CarePlan extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource { 303 304 /** 305 * Search parameter constant for <b>patient</b> 306 * <p> 307 * Description: <b></b><br> 308 * Type: <b>reference</b><br> 309 * Path: <b>CarePlan.subject</b><br> 310 * </p> 311 */ 312 @SearchParamDefinition(name="patient", path="CarePlan.subject", description="", type="reference" , providesMembershipIn={ 313 @Compartment(name="Patient") } 314, target={ 315 ca.uhn.fhir.model.dstu2.resource.Patient.class } 316 ) 317 public static final String SP_PATIENT = "patient"; 318 319 /** 320 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 321 * <p> 322 * Description: <b></b><br> 323 * Type: <b>reference</b><br> 324 * Path: <b>CarePlan.subject</b><br> 325 * </p> 326 */ 327 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 328 329 /** 330 * Search parameter constant for <b>subject</b> 331 * <p> 332 * Description: <b></b><br> 333 * Type: <b>reference</b><br> 334 * Path: <b>CarePlan.subject</b><br> 335 * </p> 336 */ 337 @SearchParamDefinition(name="subject", path="CarePlan.subject", description="", type="reference" ) 338 public static final String SP_SUBJECT = "subject"; 339 340 /** 341 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 342 * <p> 343 * Description: <b></b><br> 344 * Type: <b>reference</b><br> 345 * Path: <b>CarePlan.subject</b><br> 346 * </p> 347 */ 348 public static final ReferenceClientParam SUBJECT = new ReferenceClientParam(SP_SUBJECT); 349 350 /** 351 * Search parameter constant for <b>condition</b> 352 * <p> 353 * Description: <b></b><br> 354 * Type: <b>reference</b><br> 355 * Path: <b>CarePlan.addresses</b><br> 356 * </p> 357 */ 358 @SearchParamDefinition(name="condition", path="CarePlan.addresses", description="", type="reference" ) 359 public static final String SP_CONDITION = "condition"; 360 361 /** 362 * <b>Fluent Client</b> search parameter constant for <b>condition</b> 363 * <p> 364 * Description: <b></b><br> 365 * Type: <b>reference</b><br> 366 * Path: <b>CarePlan.addresses</b><br> 367 * </p> 368 */ 369 public static final ReferenceClientParam CONDITION = new ReferenceClientParam(SP_CONDITION); 370 371 /** 372 * Search parameter constant for <b>date</b> 373 * <p> 374 * Description: <b></b><br> 375 * Type: <b>date</b><br> 376 * Path: <b>CarePlan.period</b><br> 377 * </p> 378 */ 379 @SearchParamDefinition(name="date", path="CarePlan.period", description="", type="date" ) 380 public static final String SP_DATE = "date"; 381 382 /** 383 * <b>Fluent Client</b> search parameter constant for <b>date</b> 384 * <p> 385 * Description: <b></b><br> 386 * Type: <b>date</b><br> 387 * Path: <b>CarePlan.period</b><br> 388 * </p> 389 */ 390 public static final DateClientParam DATE = new DateClientParam(SP_DATE); 391 392 /** 393 * Search parameter constant for <b>participant</b> 394 * <p> 395 * Description: <b></b><br> 396 * Type: <b>reference</b><br> 397 * Path: <b>CarePlan.participant.member</b><br> 398 * </p> 399 */ 400 @SearchParamDefinition(name="participant", path="CarePlan.participant.member", description="", type="reference" , providesMembershipIn={ 401 @Compartment(name="Patient") , @Compartment(name="Encounter") , @Compartment(name="RelatedPerson") } 402 ) 403 public static final String SP_PARTICIPANT = "participant"; 404 405 /** 406 * <b>Fluent Client</b> search parameter constant for <b>participant</b> 407 * <p> 408 * Description: <b></b><br> 409 * Type: <b>reference</b><br> 410 * Path: <b>CarePlan.participant.member</b><br> 411 * </p> 412 */ 413 public static final ReferenceClientParam PARTICIPANT = new ReferenceClientParam(SP_PARTICIPANT); 414 415 /** 416 * Search parameter constant for <b>activitycode</b> 417 * <p> 418 * Description: <b></b><br> 419 * Type: <b>token</b><br> 420 * Path: <b>CarePlan.activity.detail.code</b><br> 421 * </p> 422 */ 423 @SearchParamDefinition(name="activitycode", path="CarePlan.activity.detail.code", description="", type="token" ) 424 public static final String SP_ACTIVITYCODE = "activitycode"; 425 426 /** 427 * <b>Fluent Client</b> search parameter constant for <b>activitycode</b> 428 * <p> 429 * Description: <b></b><br> 430 * Type: <b>token</b><br> 431 * Path: <b>CarePlan.activity.detail.code</b><br> 432 * </p> 433 */ 434 public static final TokenClientParam ACTIVITYCODE = new TokenClientParam(SP_ACTIVITYCODE); 435 436 /** 437 * Search parameter constant for <b>activitydate</b> 438 * <p> 439 * Description: <b>Specified date occurs within period specified by CarePlan.activity.timingSchedule</b><br> 440 * Type: <b>date</b><br> 441 * Path: <b>CarePlan.activity.detail.scheduled[x]</b><br> 442 * </p> 443 */ 444 @SearchParamDefinition(name="activitydate", path="CarePlan.activity.detail.scheduled[x]", description="Specified date occurs within period specified by CarePlan.activity.timingSchedule", type="date" ) 445 public static final String SP_ACTIVITYDATE = "activitydate"; 446 447 /** 448 * <b>Fluent Client</b> search parameter constant for <b>activitydate</b> 449 * <p> 450 * Description: <b>Specified date occurs within period specified by CarePlan.activity.timingSchedule</b><br> 451 * Type: <b>date</b><br> 452 * Path: <b>CarePlan.activity.detail.scheduled[x]</b><br> 453 * </p> 454 */ 455 public static final DateClientParam ACTIVITYDATE = new DateClientParam(SP_ACTIVITYDATE); 456 457 /** 458 * Search parameter constant for <b>activityreference</b> 459 * <p> 460 * Description: <b></b><br> 461 * Type: <b>reference</b><br> 462 * Path: <b>CarePlan.activity.reference</b><br> 463 * </p> 464 */ 465 @SearchParamDefinition(name="activityreference", path="CarePlan.activity.reference", description="", type="reference" ) 466 public static final String SP_ACTIVITYREFERENCE = "activityreference"; 467 468 /** 469 * <b>Fluent Client</b> search parameter constant for <b>activityreference</b> 470 * <p> 471 * Description: <b></b><br> 472 * Type: <b>reference</b><br> 473 * Path: <b>CarePlan.activity.reference</b><br> 474 * </p> 475 */ 476 public static final ReferenceClientParam ACTIVITYREFERENCE = new ReferenceClientParam(SP_ACTIVITYREFERENCE); 477 478 /** 479 * Search parameter constant for <b>performer</b> 480 * <p> 481 * Description: <b>Matches if the practitioner is listed as a performer in any of the \"simple\" activities. (For performers of the detailed activities, chain through the activitydetail search parameter.)</b><br> 482 * Type: <b>reference</b><br> 483 * Path: <b>CarePlan.activity.detail.performer</b><br> 484 * </p> 485 */ 486 @SearchParamDefinition(name="performer", path="CarePlan.activity.detail.performer", description="Matches if the practitioner is listed as a performer in any of the \"simple\" activities. (For performers of the detailed activities, chain through the activitydetail search parameter.)", type="reference" , providesMembershipIn={ 487 @Compartment(name="Patient") , @Compartment(name="Encounter") , @Compartment(name="RelatedPerson") } 488 ) 489 public static final String SP_PERFORMER = "performer"; 490 491 /** 492 * <b>Fluent Client</b> search parameter constant for <b>performer</b> 493 * <p> 494 * Description: <b>Matches if the practitioner is listed as a performer in any of the \"simple\" activities. (For performers of the detailed activities, chain through the activitydetail search parameter.)</b><br> 495 * Type: <b>reference</b><br> 496 * Path: <b>CarePlan.activity.detail.performer</b><br> 497 * </p> 498 */ 499 public static final ReferenceClientParam PERFORMER = new ReferenceClientParam(SP_PERFORMER); 500 501 /** 502 * Search parameter constant for <b>goal</b> 503 * <p> 504 * Description: <b></b><br> 505 * Type: <b>reference</b><br> 506 * Path: <b>CarePlan.goal</b><br> 507 * </p> 508 */ 509 @SearchParamDefinition(name="goal", path="CarePlan.goal", description="", type="reference" ) 510 public static final String SP_GOAL = "goal"; 511 512 /** 513 * <b>Fluent Client</b> search parameter constant for <b>goal</b> 514 * <p> 515 * Description: <b></b><br> 516 * Type: <b>reference</b><br> 517 * Path: <b>CarePlan.goal</b><br> 518 * </p> 519 */ 520 public static final ReferenceClientParam GOAL = new ReferenceClientParam(SP_GOAL); 521 522 /** 523 * Search parameter constant for <b>relatedcode</b> 524 * <p> 525 * Description: <b></b><br> 526 * Type: <b>token</b><br> 527 * Path: <b>CarePlan.relatedPlan.code</b><br> 528 * </p> 529 */ 530 @SearchParamDefinition(name="relatedcode", path="CarePlan.relatedPlan.code", description="", type="token" ) 531 public static final String SP_RELATEDCODE = "relatedcode"; 532 533 /** 534 * <b>Fluent Client</b> search parameter constant for <b>relatedcode</b> 535 * <p> 536 * Description: <b></b><br> 537 * Type: <b>token</b><br> 538 * Path: <b>CarePlan.relatedPlan.code</b><br> 539 * </p> 540 */ 541 public static final TokenClientParam RELATEDCODE = new TokenClientParam(SP_RELATEDCODE); 542 543 /** 544 * Search parameter constant for <b>relatedplan</b> 545 * <p> 546 * Description: <b></b><br> 547 * Type: <b>reference</b><br> 548 * Path: <b>CarePlan.relatedPlan.plan</b><br> 549 * </p> 550 */ 551 @SearchParamDefinition(name="relatedplan", path="CarePlan.relatedPlan.plan", description="", type="reference" ) 552 public static final String SP_RELATEDPLAN = "relatedplan"; 553 554 /** 555 * <b>Fluent Client</b> search parameter constant for <b>relatedplan</b> 556 * <p> 557 * Description: <b></b><br> 558 * Type: <b>reference</b><br> 559 * Path: <b>CarePlan.relatedPlan.plan</b><br> 560 * </p> 561 */ 562 public static final ReferenceClientParam RELATEDPLAN = new ReferenceClientParam(SP_RELATEDPLAN); 563 564 /** 565 * Search parameter constant for <b>relatedcode-relatedplan</b> 566 * <p> 567 * Description: <b>A combination of the type of relationship and the related plan</b><br> 568 * Type: <b>composite</b><br> 569 * Path: <b>relatedcode & relatedplan</b><br> 570 * </p> 571 */ 572 @SearchParamDefinition(name="relatedcode-relatedplan", path="relatedcode & relatedplan", description="A combination of the type of relationship and the related plan", type="composite" , compositeOf={ "relatedcode", "relatedplan" } ) 573 public static final String SP_RELATEDCODE_RELATEDPLAN = "relatedcode-relatedplan"; 574 575 /** 576 * <b>Fluent Client</b> search parameter constant for <b>relatedcode-relatedplan</b> 577 * <p> 578 * Description: <b>A combination of the type of relationship and the related plan</b><br> 579 * Type: <b>composite</b><br> 580 * Path: <b>relatedcode & relatedplan</b><br> 581 * </p> 582 */ 583 public static final CompositeClientParam<TokenClientParam, ReferenceClientParam> RELATEDCODE_RELATEDPLAN = new CompositeClientParam<TokenClientParam, ReferenceClientParam>(SP_RELATEDCODE_RELATEDPLAN); 584 585 586 /** 587 * Constant for fluent queries to be used to add include statements. Specifies 588 * the path value of "<b>CarePlan:activityreference</b>". 589 */ 590 public static final Include INCLUDE_ACTIVITYREFERENCE = new Include("CarePlan:activityreference"); 591 592 /** 593 * Constant for fluent queries to be used to add include statements. Specifies 594 * the path value of "<b>CarePlan:condition</b>". 595 */ 596 public static final Include INCLUDE_CONDITION = new Include("CarePlan:condition"); 597 598 /** 599 * Constant for fluent queries to be used to add include statements. Specifies 600 * the path value of "<b>CarePlan:goal</b>". 601 */ 602 public static final Include INCLUDE_GOAL = new Include("CarePlan:goal"); 603 604 /** 605 * Constant for fluent queries to be used to add include statements. Specifies 606 * the path value of "<b>CarePlan:participant</b>". 607 */ 608 public static final Include INCLUDE_PARTICIPANT = new Include("CarePlan:participant"); 609 610 /** 611 * Constant for fluent queries to be used to add include statements. Specifies 612 * the path value of "<b>CarePlan:patient</b>". 613 */ 614 public static final Include INCLUDE_PATIENT = new Include("CarePlan:patient"); 615 616 /** 617 * Constant for fluent queries to be used to add include statements. Specifies 618 * the path value of "<b>CarePlan:performer</b>". 619 */ 620 public static final Include INCLUDE_PERFORMER = new Include("CarePlan:performer"); 621 622 /** 623 * Constant for fluent queries to be used to add include statements. Specifies 624 * the path value of "<b>CarePlan:relatedplan</b>". 625 */ 626 public static final Include INCLUDE_RELATEDPLAN = new Include("CarePlan:relatedplan"); 627 628 /** 629 * Constant for fluent queries to be used to add include statements. Specifies 630 * the path value of "<b>CarePlan:subject</b>". 631 */ 632 public static final Include INCLUDE_SUBJECT = new Include("CarePlan:subject"); 633 634 635 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 636 @Description( 637 shortDefinition="", 638 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)" 639 ) 640 private java.util.List<IdentifierDt> myIdentifier; 641 642 @Child(name="subject", order=1, min=0, max=1, summary=true, modifier=false, type={ 643 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Group.class }) 644 @Description( 645 shortDefinition="", 646 formalDefinition="Identifies the patient or group whose intended care is described by the plan." 647 ) 648 private ResourceReferenceDt mySubject; 649 650 @Child(name="status", type=CodeDt.class, order=2, min=1, max=1, summary=true, modifier=true) 651 @Description( 652 shortDefinition="", 653 formalDefinition="Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record." 654 ) 655 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/care-plan-status") 656 private BoundCodeDt<CarePlanStatusEnum> myStatus; 657 658 @Child(name="context", order=3, min=0, max=1, summary=true, modifier=false, type={ 659 ca.uhn.fhir.model.dstu2.resource.Encounter.class, ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare.class }) 660 @Description( 661 shortDefinition="", 662 formalDefinition="Identifies the context in which this particular CarePlan is defined." 663 ) 664 private ResourceReferenceDt myContext; 665 666 @Child(name="period", type=PeriodDt.class, order=4, min=0, max=1, summary=true, modifier=false) 667 @Description( 668 shortDefinition="", 669 formalDefinition="Indicates when the plan did (or is intended to) come into effect and end." 670 ) 671 private PeriodDt myPeriod; 672 673 @Child(name="author", order=5, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false, type={ 674 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.RelatedPerson.class, ca.uhn.fhir.model.dstu2.resource.Organization.class }) 675 @Description( 676 shortDefinition="", 677 formalDefinition="Identifies the individual(s) or ogranization who is responsible for the content of the care plan." 678 ) 679 private java.util.List<ResourceReferenceDt> myAuthor; 680 681 @Child(name="modified", type=DateTimeDt.class, order=6, min=0, max=1, summary=true, modifier=false) 682 @Description( 683 shortDefinition="", 684 formalDefinition="Identifies the most recent date on which the plan has been revised." 685 ) 686 private DateTimeDt myModified; 687 688 @Child(name="category", type=CodeableConceptDt.class, order=7, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 689 @Description( 690 shortDefinition="", 691 formalDefinition="Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc." 692 ) 693 private java.util.List<CodeableConceptDt> myCategory; 694 695 @Child(name="description", type=StringDt.class, order=8, min=0, max=1, summary=true, modifier=false) 696 @Description( 697 shortDefinition="", 698 formalDefinition="A description of the scope and nature of the plan" 699 ) 700 private StringDt myDescription; 701 702 @Child(name="addresses", order=9, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false, type={ 703 ca.uhn.fhir.model.dstu2.resource.Condition.class }) 704 @Description( 705 shortDefinition="", 706 formalDefinition="Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan." 707 ) 708 private java.util.List<ResourceReferenceDt> myAddresses; 709 710 @Child(name="support", order=10, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 711 IResource.class }) 712 @Description( 713 shortDefinition="", 714 formalDefinition="Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, recent procedures, limitations, recent assessments, etc." 715 ) 716 private java.util.List<ResourceReferenceDt> mySupport; 717 718 @Child(name="relatedPlan", order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 719 @Description( 720 shortDefinition="", 721 formalDefinition="Identifies CarePlans with some sort of formal relationship to the current plan." 722 ) 723 private java.util.List<RelatedPlan> myRelatedPlan; 724 725 @Child(name="participant", order=12, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 726 @Description( 727 shortDefinition="", 728 formalDefinition="Identifies all people and organizations who are expected to be involved in the care envisioned by this plan." 729 ) 730 private java.util.List<Participant> myParticipant; 731 732 @Child(name="goal", order=13, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 733 ca.uhn.fhir.model.dstu2.resource.Goal.class }) 734 @Description( 735 shortDefinition="", 736 formalDefinition="Describes the intended objective(s) of carrying out the care plan." 737 ) 738 private java.util.List<ResourceReferenceDt> myGoal; 739 740 @Child(name="activity", order=14, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 741 @Description( 742 shortDefinition="", 743 formalDefinition="Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc." 744 ) 745 private java.util.List<Activity> myActivity; 746 747 @Child(name="note", type=AnnotationDt.class, order=15, min=0, max=1, summary=false, modifier=false) 748 @Description( 749 shortDefinition="", 750 formalDefinition="General notes about the care plan not covered elsewhere" 751 ) 752 private AnnotationDt myNote; 753 754 755 @Override 756 public boolean isEmpty() { 757 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, mySubject, myStatus, myContext, myPeriod, myAuthor, myModified, myCategory, myDescription, myAddresses, mySupport, myRelatedPlan, myParticipant, myGoal, myActivity, myNote); 758 } 759 760 @Override 761 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 762 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, mySubject, myStatus, myContext, myPeriod, myAuthor, myModified, myCategory, myDescription, myAddresses, mySupport, myRelatedPlan, myParticipant, myGoal, myActivity, myNote); 763 } 764 765 /** 766 * Gets the value(s) for <b>identifier</b> (). 767 * creating it if it does 768 * not exist. Will not return <code>null</code>. 769 * 770 * <p> 771 * <b>Definition:</b> 772 * 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) 773 * </p> 774 */ 775 public java.util.List<IdentifierDt> getIdentifier() { 776 if (myIdentifier == null) { 777 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 778 } 779 return myIdentifier; 780 } 781 782 /** 783 * Sets the value(s) for <b>identifier</b> () 784 * 785 * <p> 786 * <b>Definition:</b> 787 * 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) 788 * </p> 789 */ 790 public CarePlan setIdentifier(java.util.List<IdentifierDt> theValue) { 791 myIdentifier = theValue; 792 return this; 793 } 794 795 796 797 /** 798 * Adds and returns a new value for <b>identifier</b> () 799 * 800 * <p> 801 * <b>Definition:</b> 802 * 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) 803 * </p> 804 */ 805 public IdentifierDt addIdentifier() { 806 IdentifierDt newType = new IdentifierDt(); 807 getIdentifier().add(newType); 808 return newType; 809 } 810 811 /** 812 * Adds a given new value for <b>identifier</b> () 813 * 814 * <p> 815 * <b>Definition:</b> 816 * 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) 817 * </p> 818 * @param theValue The identifier to add (must not be <code>null</code>) 819 */ 820 public CarePlan addIdentifier(IdentifierDt theValue) { 821 if (theValue == null) { 822 throw new NullPointerException("theValue must not be null"); 823 } 824 getIdentifier().add(theValue); 825 return this; 826 } 827 828 /** 829 * Gets the first repetition for <b>identifier</b> (), 830 * creating it if it does not already exist. 831 * 832 * <p> 833 * <b>Definition:</b> 834 * 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) 835 * </p> 836 */ 837 public IdentifierDt getIdentifierFirstRep() { 838 if (getIdentifier().isEmpty()) { 839 return addIdentifier(); 840 } 841 return getIdentifier().get(0); 842 } 843 844 /** 845 * Gets the value(s) for <b>subject</b> (). 846 * creating it if it does 847 * not exist. Will not return <code>null</code>. 848 * 849 * <p> 850 * <b>Definition:</b> 851 * Identifies the patient or group whose intended care is described by the plan. 852 * </p> 853 */ 854 public ResourceReferenceDt getSubject() { 855 if (mySubject == null) { 856 mySubject = new ResourceReferenceDt(); 857 } 858 return mySubject; 859 } 860 861 /** 862 * Sets the value(s) for <b>subject</b> () 863 * 864 * <p> 865 * <b>Definition:</b> 866 * Identifies the patient or group whose intended care is described by the plan. 867 * </p> 868 */ 869 public CarePlan setSubject(ResourceReferenceDt theValue) { 870 mySubject = theValue; 871 return this; 872 } 873 874 875 876 877 /** 878 * Gets the value(s) for <b>status</b> (). 879 * creating it if it does 880 * not exist. Will not return <code>null</code>. 881 * 882 * <p> 883 * <b>Definition:</b> 884 * Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. 885 * </p> 886 */ 887 public BoundCodeDt<CarePlanStatusEnum> getStatusElement() { 888 if (myStatus == null) { 889 myStatus = new BoundCodeDt<CarePlanStatusEnum>(CarePlanStatusEnum.VALUESET_BINDER); 890 } 891 return myStatus; 892 } 893 894 895 /** 896 * Gets the value(s) for <b>status</b> (). 897 * creating it if it does 898 * not exist. This method may return <code>null</code>. 899 * 900 * <p> 901 * <b>Definition:</b> 902 * Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. 903 * </p> 904 */ 905 public String getStatus() { 906 return getStatusElement().getValue(); 907 } 908 909 /** 910 * Sets the value(s) for <b>status</b> () 911 * 912 * <p> 913 * <b>Definition:</b> 914 * Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. 915 * </p> 916 */ 917 public CarePlan setStatus(BoundCodeDt<CarePlanStatusEnum> theValue) { 918 myStatus = theValue; 919 return this; 920 } 921 922 923 924 /** 925 * Sets the value(s) for <b>status</b> () 926 * 927 * <p> 928 * <b>Definition:</b> 929 * Indicates whether the plan is currently being acted upon, represents future intentions or is now a historical record. 930 * </p> 931 */ 932 public CarePlan setStatus(CarePlanStatusEnum theValue) { 933 setStatus(new BoundCodeDt<CarePlanStatusEnum>(CarePlanStatusEnum.VALUESET_BINDER, theValue)); 934 935/* 936 getStatusElement().setValueAsEnum(theValue); 937*/ 938 return this; 939 } 940 941 942 /** 943 * Gets the value(s) for <b>context</b> (). 944 * creating it if it does 945 * not exist. Will not return <code>null</code>. 946 * 947 * <p> 948 * <b>Definition:</b> 949 * Identifies the context in which this particular CarePlan is defined. 950 * </p> 951 */ 952 public ResourceReferenceDt getContext() { 953 if (myContext == null) { 954 myContext = new ResourceReferenceDt(); 955 } 956 return myContext; 957 } 958 959 /** 960 * Sets the value(s) for <b>context</b> () 961 * 962 * <p> 963 * <b>Definition:</b> 964 * Identifies the context in which this particular CarePlan is defined. 965 * </p> 966 */ 967 public CarePlan setContext(ResourceReferenceDt theValue) { 968 myContext = theValue; 969 return this; 970 } 971 972 973 974 975 /** 976 * Gets the value(s) for <b>period</b> (). 977 * creating it if it does 978 * not exist. Will not return <code>null</code>. 979 * 980 * <p> 981 * <b>Definition:</b> 982 * Indicates when the plan did (or is intended to) come into effect and end. 983 * </p> 984 */ 985 public PeriodDt getPeriod() { 986 if (myPeriod == null) { 987 myPeriod = new PeriodDt(); 988 } 989 return myPeriod; 990 } 991 992 /** 993 * Sets the value(s) for <b>period</b> () 994 * 995 * <p> 996 * <b>Definition:</b> 997 * Indicates when the plan did (or is intended to) come into effect and end. 998 * </p> 999 */ 1000 public CarePlan setPeriod(PeriodDt theValue) { 1001 myPeriod = theValue; 1002 return this; 1003 } 1004 1005 1006 1007 1008 /** 1009 * Gets the value(s) for <b>author</b> (). 1010 * creating it if it does 1011 * not exist. Will not return <code>null</code>. 1012 * 1013 * <p> 1014 * <b>Definition:</b> 1015 * Identifies the individual(s) or ogranization who is responsible for the content of the care plan. 1016 * </p> 1017 */ 1018 public java.util.List<ResourceReferenceDt> getAuthor() { 1019 if (myAuthor == null) { 1020 myAuthor = new java.util.ArrayList<ResourceReferenceDt>(); 1021 } 1022 return myAuthor; 1023 } 1024 1025 /** 1026 * Sets the value(s) for <b>author</b> () 1027 * 1028 * <p> 1029 * <b>Definition:</b> 1030 * Identifies the individual(s) or ogranization who is responsible for the content of the care plan. 1031 * </p> 1032 */ 1033 public CarePlan setAuthor(java.util.List<ResourceReferenceDt> theValue) { 1034 myAuthor = theValue; 1035 return this; 1036 } 1037 1038 1039 1040 /** 1041 * Adds and returns a new value for <b>author</b> () 1042 * 1043 * <p> 1044 * <b>Definition:</b> 1045 * Identifies the individual(s) or ogranization who is responsible for the content of the care plan. 1046 * </p> 1047 */ 1048 public ResourceReferenceDt addAuthor() { 1049 ResourceReferenceDt newType = new ResourceReferenceDt(); 1050 getAuthor().add(newType); 1051 return newType; 1052 } 1053 1054 /** 1055 * Gets the value(s) for <b>modified</b> (). 1056 * creating it if it does 1057 * not exist. Will not return <code>null</code>. 1058 * 1059 * <p> 1060 * <b>Definition:</b> 1061 * Identifies the most recent date on which the plan has been revised. 1062 * </p> 1063 */ 1064 public DateTimeDt getModifiedElement() { 1065 if (myModified == null) { 1066 myModified = new DateTimeDt(); 1067 } 1068 return myModified; 1069 } 1070 1071 1072 /** 1073 * Gets the value(s) for <b>modified</b> (). 1074 * creating it if it does 1075 * not exist. This method may return <code>null</code>. 1076 * 1077 * <p> 1078 * <b>Definition:</b> 1079 * Identifies the most recent date on which the plan has been revised. 1080 * </p> 1081 */ 1082 public Date getModified() { 1083 return getModifiedElement().getValue(); 1084 } 1085 1086 /** 1087 * Sets the value(s) for <b>modified</b> () 1088 * 1089 * <p> 1090 * <b>Definition:</b> 1091 * Identifies the most recent date on which the plan has been revised. 1092 * </p> 1093 */ 1094 public CarePlan setModified(DateTimeDt theValue) { 1095 myModified = theValue; 1096 return this; 1097 } 1098 1099 1100 1101 /** 1102 * Sets the value for <b>modified</b> () 1103 * 1104 * <p> 1105 * <b>Definition:</b> 1106 * Identifies the most recent date on which the plan has been revised. 1107 * </p> 1108 */ 1109 public CarePlan setModified( Date theDate, TemporalPrecisionEnum thePrecision) { 1110 myModified = new DateTimeDt(theDate, thePrecision); 1111 return this; 1112 } 1113 1114 /** 1115 * Sets the value for <b>modified</b> () 1116 * 1117 * <p> 1118 * <b>Definition:</b> 1119 * Identifies the most recent date on which the plan has been revised. 1120 * </p> 1121 */ 1122 public CarePlan setModifiedWithSecondsPrecision( Date theDate) { 1123 myModified = new DateTimeDt(theDate); 1124 return this; 1125 } 1126 1127 1128 /** 1129 * Gets the value(s) for <b>category</b> (). 1130 * creating it if it does 1131 * not exist. Will not return <code>null</code>. 1132 * 1133 * <p> 1134 * <b>Definition:</b> 1135 * Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc. 1136 * </p> 1137 */ 1138 public java.util.List<CodeableConceptDt> getCategory() { 1139 if (myCategory == null) { 1140 myCategory = new java.util.ArrayList<CodeableConceptDt>(); 1141 } 1142 return myCategory; 1143 } 1144 1145 /** 1146 * Sets the value(s) for <b>category</b> () 1147 * 1148 * <p> 1149 * <b>Definition:</b> 1150 * Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc. 1151 * </p> 1152 */ 1153 public CarePlan setCategory(java.util.List<CodeableConceptDt> theValue) { 1154 myCategory = theValue; 1155 return this; 1156 } 1157 1158 1159 1160 /** 1161 * Adds and returns a new value for <b>category</b> () 1162 * 1163 * <p> 1164 * <b>Definition:</b> 1165 * Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc. 1166 * </p> 1167 */ 1168 public CodeableConceptDt addCategory() { 1169 CodeableConceptDt newType = new CodeableConceptDt(); 1170 getCategory().add(newType); 1171 return newType; 1172 } 1173 1174 /** 1175 * Adds a given new value for <b>category</b> () 1176 * 1177 * <p> 1178 * <b>Definition:</b> 1179 * Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc. 1180 * </p> 1181 * @param theValue The category to add (must not be <code>null</code>) 1182 */ 1183 public CarePlan addCategory(CodeableConceptDt theValue) { 1184 if (theValue == null) { 1185 throw new NullPointerException("theValue must not be null"); 1186 } 1187 getCategory().add(theValue); 1188 return this; 1189 } 1190 1191 /** 1192 * Gets the first repetition for <b>category</b> (), 1193 * creating it if it does not already exist. 1194 * 1195 * <p> 1196 * <b>Definition:</b> 1197 * Identifies what \"kind\" of plan this is to support differentiation between multiple co-existing plans; e.g. \"Home health\", \"psychiatric\", \"asthma\", \"disease management\", \"wellness plan\", etc. 1198 * </p> 1199 */ 1200 public CodeableConceptDt getCategoryFirstRep() { 1201 if (getCategory().isEmpty()) { 1202 return addCategory(); 1203 } 1204 return getCategory().get(0); 1205 } 1206 1207 /** 1208 * Gets the value(s) for <b>description</b> (). 1209 * creating it if it does 1210 * not exist. Will not return <code>null</code>. 1211 * 1212 * <p> 1213 * <b>Definition:</b> 1214 * A description of the scope and nature of the plan 1215 * </p> 1216 */ 1217 public StringDt getDescriptionElement() { 1218 if (myDescription == null) { 1219 myDescription = new StringDt(); 1220 } 1221 return myDescription; 1222 } 1223 1224 1225 /** 1226 * Gets the value(s) for <b>description</b> (). 1227 * creating it if it does 1228 * not exist. This method may return <code>null</code>. 1229 * 1230 * <p> 1231 * <b>Definition:</b> 1232 * A description of the scope and nature of the plan 1233 * </p> 1234 */ 1235 public String getDescription() { 1236 return getDescriptionElement().getValue(); 1237 } 1238 1239 /** 1240 * Sets the value(s) for <b>description</b> () 1241 * 1242 * <p> 1243 * <b>Definition:</b> 1244 * A description of the scope and nature of the plan 1245 * </p> 1246 */ 1247 public CarePlan setDescription(StringDt theValue) { 1248 myDescription = theValue; 1249 return this; 1250 } 1251 1252 1253 1254 /** 1255 * Sets the value for <b>description</b> () 1256 * 1257 * <p> 1258 * <b>Definition:</b> 1259 * A description of the scope and nature of the plan 1260 * </p> 1261 */ 1262 public CarePlan setDescription( String theString) { 1263 myDescription = new StringDt(theString); 1264 return this; 1265 } 1266 1267 1268 /** 1269 * Gets the value(s) for <b>addresses</b> (). 1270 * creating it if it does 1271 * not exist. Will not return <code>null</code>. 1272 * 1273 * <p> 1274 * <b>Definition:</b> 1275 * Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan. 1276 * </p> 1277 */ 1278 public java.util.List<ResourceReferenceDt> getAddresses() { 1279 if (myAddresses == null) { 1280 myAddresses = new java.util.ArrayList<ResourceReferenceDt>(); 1281 } 1282 return myAddresses; 1283 } 1284 1285 /** 1286 * Sets the value(s) for <b>addresses</b> () 1287 * 1288 * <p> 1289 * <b>Definition:</b> 1290 * Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan. 1291 * </p> 1292 */ 1293 public CarePlan setAddresses(java.util.List<ResourceReferenceDt> theValue) { 1294 myAddresses = theValue; 1295 return this; 1296 } 1297 1298 1299 1300 /** 1301 * Adds and returns a new value for <b>addresses</b> () 1302 * 1303 * <p> 1304 * <b>Definition:</b> 1305 * Identifies the conditions/problems/concerns/diagnoses/etc. whose management and/or mitigation are handled by this plan. 1306 * </p> 1307 */ 1308 public ResourceReferenceDt addAddresses() { 1309 ResourceReferenceDt newType = new ResourceReferenceDt(); 1310 getAddresses().add(newType); 1311 return newType; 1312 } 1313 1314 /** 1315 * Gets the value(s) for <b>support</b> (). 1316 * creating it if it does 1317 * not exist. Will not return <code>null</code>. 1318 * 1319 * <p> 1320 * <b>Definition:</b> 1321 * Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, recent procedures, limitations, recent assessments, etc. 1322 * </p> 1323 */ 1324 public java.util.List<ResourceReferenceDt> getSupport() { 1325 if (mySupport == null) { 1326 mySupport = new java.util.ArrayList<ResourceReferenceDt>(); 1327 } 1328 return mySupport; 1329 } 1330 1331 /** 1332 * Sets the value(s) for <b>support</b> () 1333 * 1334 * <p> 1335 * <b>Definition:</b> 1336 * Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, recent procedures, limitations, recent assessments, etc. 1337 * </p> 1338 */ 1339 public CarePlan setSupport(java.util.List<ResourceReferenceDt> theValue) { 1340 mySupport = theValue; 1341 return this; 1342 } 1343 1344 1345 1346 /** 1347 * Adds and returns a new value for <b>support</b> () 1348 * 1349 * <p> 1350 * <b>Definition:</b> 1351 * Identifies portions of the patient's record that specifically influenced the formation of the plan. These might include co-morbidities, recent procedures, limitations, recent assessments, etc. 1352 * </p> 1353 */ 1354 public ResourceReferenceDt addSupport() { 1355 ResourceReferenceDt newType = new ResourceReferenceDt(); 1356 getSupport().add(newType); 1357 return newType; 1358 } 1359 1360 /** 1361 * Gets the value(s) for <b>relatedPlan</b> (). 1362 * creating it if it does 1363 * not exist. Will not return <code>null</code>. 1364 * 1365 * <p> 1366 * <b>Definition:</b> 1367 * Identifies CarePlans with some sort of formal relationship to the current plan. 1368 * </p> 1369 */ 1370 public java.util.List<RelatedPlan> getRelatedPlan() { 1371 if (myRelatedPlan == null) { 1372 myRelatedPlan = new java.util.ArrayList<RelatedPlan>(); 1373 } 1374 return myRelatedPlan; 1375 } 1376 1377 /** 1378 * Sets the value(s) for <b>relatedPlan</b> () 1379 * 1380 * <p> 1381 * <b>Definition:</b> 1382 * Identifies CarePlans with some sort of formal relationship to the current plan. 1383 * </p> 1384 */ 1385 public CarePlan setRelatedPlan(java.util.List<RelatedPlan> theValue) { 1386 myRelatedPlan = theValue; 1387 return this; 1388 } 1389 1390 1391 1392 /** 1393 * Adds and returns a new value for <b>relatedPlan</b> () 1394 * 1395 * <p> 1396 * <b>Definition:</b> 1397 * Identifies CarePlans with some sort of formal relationship to the current plan. 1398 * </p> 1399 */ 1400 public RelatedPlan addRelatedPlan() { 1401 RelatedPlan newType = new RelatedPlan(); 1402 getRelatedPlan().add(newType); 1403 return newType; 1404 } 1405 1406 /** 1407 * Adds a given new value for <b>relatedPlan</b> () 1408 * 1409 * <p> 1410 * <b>Definition:</b> 1411 * Identifies CarePlans with some sort of formal relationship to the current plan. 1412 * </p> 1413 * @param theValue The relatedPlan to add (must not be <code>null</code>) 1414 */ 1415 public CarePlan addRelatedPlan(RelatedPlan theValue) { 1416 if (theValue == null) { 1417 throw new NullPointerException("theValue must not be null"); 1418 } 1419 getRelatedPlan().add(theValue); 1420 return this; 1421 } 1422 1423 /** 1424 * Gets the first repetition for <b>relatedPlan</b> (), 1425 * creating it if it does not already exist. 1426 * 1427 * <p> 1428 * <b>Definition:</b> 1429 * Identifies CarePlans with some sort of formal relationship to the current plan. 1430 * </p> 1431 */ 1432 public RelatedPlan getRelatedPlanFirstRep() { 1433 if (getRelatedPlan().isEmpty()) { 1434 return addRelatedPlan(); 1435 } 1436 return getRelatedPlan().get(0); 1437 } 1438 1439 /** 1440 * Gets the value(s) for <b>participant</b> (). 1441 * creating it if it does 1442 * not exist. Will not return <code>null</code>. 1443 * 1444 * <p> 1445 * <b>Definition:</b> 1446 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1447 * </p> 1448 */ 1449 public java.util.List<Participant> getParticipant() { 1450 if (myParticipant == null) { 1451 myParticipant = new java.util.ArrayList<Participant>(); 1452 } 1453 return myParticipant; 1454 } 1455 1456 /** 1457 * Sets the value(s) for <b>participant</b> () 1458 * 1459 * <p> 1460 * <b>Definition:</b> 1461 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1462 * </p> 1463 */ 1464 public CarePlan setParticipant(java.util.List<Participant> theValue) { 1465 myParticipant = theValue; 1466 return this; 1467 } 1468 1469 1470 1471 /** 1472 * Adds and returns a new value for <b>participant</b> () 1473 * 1474 * <p> 1475 * <b>Definition:</b> 1476 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1477 * </p> 1478 */ 1479 public Participant addParticipant() { 1480 Participant newType = new Participant(); 1481 getParticipant().add(newType); 1482 return newType; 1483 } 1484 1485 /** 1486 * Adds a given new value for <b>participant</b> () 1487 * 1488 * <p> 1489 * <b>Definition:</b> 1490 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1491 * </p> 1492 * @param theValue The participant to add (must not be <code>null</code>) 1493 */ 1494 public CarePlan addParticipant(Participant theValue) { 1495 if (theValue == null) { 1496 throw new NullPointerException("theValue must not be null"); 1497 } 1498 getParticipant().add(theValue); 1499 return this; 1500 } 1501 1502 /** 1503 * Gets the first repetition for <b>participant</b> (), 1504 * creating it if it does not already exist. 1505 * 1506 * <p> 1507 * <b>Definition:</b> 1508 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1509 * </p> 1510 */ 1511 public Participant getParticipantFirstRep() { 1512 if (getParticipant().isEmpty()) { 1513 return addParticipant(); 1514 } 1515 return getParticipant().get(0); 1516 } 1517 1518 /** 1519 * Gets the value(s) for <b>goal</b> (). 1520 * creating it if it does 1521 * not exist. Will not return <code>null</code>. 1522 * 1523 * <p> 1524 * <b>Definition:</b> 1525 * Describes the intended objective(s) of carrying out the care plan. 1526 * </p> 1527 */ 1528 public java.util.List<ResourceReferenceDt> getGoal() { 1529 if (myGoal == null) { 1530 myGoal = new java.util.ArrayList<ResourceReferenceDt>(); 1531 } 1532 return myGoal; 1533 } 1534 1535 /** 1536 * Sets the value(s) for <b>goal</b> () 1537 * 1538 * <p> 1539 * <b>Definition:</b> 1540 * Describes the intended objective(s) of carrying out the care plan. 1541 * </p> 1542 */ 1543 public CarePlan setGoal(java.util.List<ResourceReferenceDt> theValue) { 1544 myGoal = theValue; 1545 return this; 1546 } 1547 1548 1549 1550 /** 1551 * Adds and returns a new value for <b>goal</b> () 1552 * 1553 * <p> 1554 * <b>Definition:</b> 1555 * Describes the intended objective(s) of carrying out the care plan. 1556 * </p> 1557 */ 1558 public ResourceReferenceDt addGoal() { 1559 ResourceReferenceDt newType = new ResourceReferenceDt(); 1560 getGoal().add(newType); 1561 return newType; 1562 } 1563 1564 /** 1565 * Gets the value(s) for <b>activity</b> (). 1566 * creating it if it does 1567 * not exist. Will not return <code>null</code>. 1568 * 1569 * <p> 1570 * <b>Definition:</b> 1571 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1572 * </p> 1573 */ 1574 public java.util.List<Activity> getActivity() { 1575 if (myActivity == null) { 1576 myActivity = new java.util.ArrayList<Activity>(); 1577 } 1578 return myActivity; 1579 } 1580 1581 /** 1582 * Sets the value(s) for <b>activity</b> () 1583 * 1584 * <p> 1585 * <b>Definition:</b> 1586 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1587 * </p> 1588 */ 1589 public CarePlan setActivity(java.util.List<Activity> theValue) { 1590 myActivity = theValue; 1591 return this; 1592 } 1593 1594 1595 1596 /** 1597 * Adds and returns a new value for <b>activity</b> () 1598 * 1599 * <p> 1600 * <b>Definition:</b> 1601 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1602 * </p> 1603 */ 1604 public Activity addActivity() { 1605 Activity newType = new Activity(); 1606 getActivity().add(newType); 1607 return newType; 1608 } 1609 1610 /** 1611 * Adds a given new value for <b>activity</b> () 1612 * 1613 * <p> 1614 * <b>Definition:</b> 1615 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1616 * </p> 1617 * @param theValue The activity to add (must not be <code>null</code>) 1618 */ 1619 public CarePlan addActivity(Activity theValue) { 1620 if (theValue == null) { 1621 throw new NullPointerException("theValue must not be null"); 1622 } 1623 getActivity().add(theValue); 1624 return this; 1625 } 1626 1627 /** 1628 * Gets the first repetition for <b>activity</b> (), 1629 * creating it if it does not already exist. 1630 * 1631 * <p> 1632 * <b>Definition:</b> 1633 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1634 * </p> 1635 */ 1636 public Activity getActivityFirstRep() { 1637 if (getActivity().isEmpty()) { 1638 return addActivity(); 1639 } 1640 return getActivity().get(0); 1641 } 1642 1643 /** 1644 * Gets the value(s) for <b>note</b> (). 1645 * creating it if it does 1646 * not exist. Will not return <code>null</code>. 1647 * 1648 * <p> 1649 * <b>Definition:</b> 1650 * General notes about the care plan not covered elsewhere 1651 * </p> 1652 */ 1653 public AnnotationDt getNote() { 1654 if (myNote == null) { 1655 myNote = new AnnotationDt(); 1656 } 1657 return myNote; 1658 } 1659 1660 /** 1661 * Sets the value(s) for <b>note</b> () 1662 * 1663 * <p> 1664 * <b>Definition:</b> 1665 * General notes about the care plan not covered elsewhere 1666 * </p> 1667 */ 1668 public CarePlan setNote(AnnotationDt theValue) { 1669 myNote = theValue; 1670 return this; 1671 } 1672 1673 1674 1675 1676 /** 1677 * Block class for child element: <b>CarePlan.relatedPlan</b> () 1678 * 1679 * <p> 1680 * <b>Definition:</b> 1681 * Identifies CarePlans with some sort of formal relationship to the current plan. 1682 * </p> 1683 */ 1684 @Block() 1685 public static class RelatedPlan 1686 extends BaseIdentifiableElement implements IResourceBlock { 1687 1688 @Child(name="code", type=CodeDt.class, order=0, min=0, max=1, summary=false, modifier=false) 1689 @Description( 1690 shortDefinition="", 1691 formalDefinition="Identifies the type of relationship this plan has to the target plan." 1692 ) 1693 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/care-plan-relationship") 1694 private BoundCodeDt<CarePlanRelationshipEnum> myCode; 1695 1696 @Child(name="plan", order=1, min=1, max=1, summary=false, modifier=false, type={ 1697 ca.uhn.fhir.model.dstu2.resource.CarePlan.class }) 1698 @Description( 1699 shortDefinition="", 1700 formalDefinition="A reference to the plan to which a relationship is asserted." 1701 ) 1702 private ResourceReferenceDt myPlan; 1703 1704 1705 @Override 1706 public boolean isEmpty() { 1707 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myPlan); 1708 } 1709 1710 @Override 1711 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1712 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myPlan); 1713 } 1714 1715 /** 1716 * Gets the value(s) for <b>code</b> (). 1717 * creating it if it does 1718 * not exist. Will not return <code>null</code>. 1719 * 1720 * <p> 1721 * <b>Definition:</b> 1722 * Identifies the type of relationship this plan has to the target plan. 1723 * </p> 1724 */ 1725 public BoundCodeDt<CarePlanRelationshipEnum> getCodeElement() { 1726 if (myCode == null) { 1727 myCode = new BoundCodeDt<CarePlanRelationshipEnum>(CarePlanRelationshipEnum.VALUESET_BINDER); 1728 } 1729 return myCode; 1730 } 1731 1732 1733 /** 1734 * Gets the value(s) for <b>code</b> (). 1735 * creating it if it does 1736 * not exist. This method may return <code>null</code>. 1737 * 1738 * <p> 1739 * <b>Definition:</b> 1740 * Identifies the type of relationship this plan has to the target plan. 1741 * </p> 1742 */ 1743 public String getCode() { 1744 return getCodeElement().getValue(); 1745 } 1746 1747 /** 1748 * Sets the value(s) for <b>code</b> () 1749 * 1750 * <p> 1751 * <b>Definition:</b> 1752 * Identifies the type of relationship this plan has to the target plan. 1753 * </p> 1754 */ 1755 public RelatedPlan setCode(BoundCodeDt<CarePlanRelationshipEnum> theValue) { 1756 myCode = theValue; 1757 return this; 1758 } 1759 1760 1761 1762 /** 1763 * Sets the value(s) for <b>code</b> () 1764 * 1765 * <p> 1766 * <b>Definition:</b> 1767 * Identifies the type of relationship this plan has to the target plan. 1768 * </p> 1769 */ 1770 public RelatedPlan setCode(CarePlanRelationshipEnum theValue) { 1771 setCode(new BoundCodeDt<CarePlanRelationshipEnum>(CarePlanRelationshipEnum.VALUESET_BINDER, theValue)); 1772 1773/* 1774 getCodeElement().setValueAsEnum(theValue); 1775*/ 1776 return this; 1777 } 1778 1779 1780 /** 1781 * Gets the value(s) for <b>plan</b> (). 1782 * creating it if it does 1783 * not exist. Will not return <code>null</code>. 1784 * 1785 * <p> 1786 * <b>Definition:</b> 1787 * A reference to the plan to which a relationship is asserted. 1788 * </p> 1789 */ 1790 public ResourceReferenceDt getPlan() { 1791 if (myPlan == null) { 1792 myPlan = new ResourceReferenceDt(); 1793 } 1794 return myPlan; 1795 } 1796 1797 /** 1798 * Sets the value(s) for <b>plan</b> () 1799 * 1800 * <p> 1801 * <b>Definition:</b> 1802 * A reference to the plan to which a relationship is asserted. 1803 * </p> 1804 */ 1805 public RelatedPlan setPlan(ResourceReferenceDt theValue) { 1806 myPlan = theValue; 1807 return this; 1808 } 1809 1810 1811 1812 1813 1814 1815 } 1816 1817 1818 /** 1819 * Block class for child element: <b>CarePlan.participant</b> () 1820 * 1821 * <p> 1822 * <b>Definition:</b> 1823 * Identifies all people and organizations who are expected to be involved in the care envisioned by this plan. 1824 * </p> 1825 */ 1826 @Block() 1827 public static class Participant 1828 extends BaseIdentifiableElement implements IResourceBlock { 1829 1830 @Child(name="role", type=CodeableConceptDt.class, order=0, min=0, max=1, summary=false, modifier=false) 1831 @Description( 1832 shortDefinition="", 1833 formalDefinition="Indicates specific responsibility of an individual within the care plan; e.g. \"Primary physician\", \"Team coordinator\", \"Caregiver\", etc." 1834 ) 1835 private CodeableConceptDt myRole; 1836 1837 @Child(name="member", order=1, min=0, max=1, summary=false, modifier=false, type={ 1838 ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.RelatedPerson.class, ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Organization.class }) 1839 @Description( 1840 shortDefinition="", 1841 formalDefinition="The specific person or organization who is participating/expected to participate in the care plan." 1842 ) 1843 private ResourceReferenceDt myMember; 1844 1845 1846 @Override 1847 public boolean isEmpty() { 1848 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myRole, myMember); 1849 } 1850 1851 @Override 1852 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1853 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myRole, myMember); 1854 } 1855 1856 /** 1857 * Gets the value(s) for <b>role</b> (). 1858 * creating it if it does 1859 * not exist. Will not return <code>null</code>. 1860 * 1861 * <p> 1862 * <b>Definition:</b> 1863 * Indicates specific responsibility of an individual within the care plan; e.g. \"Primary physician\", \"Team coordinator\", \"Caregiver\", etc. 1864 * </p> 1865 */ 1866 public CodeableConceptDt getRole() { 1867 if (myRole == null) { 1868 myRole = new CodeableConceptDt(); 1869 } 1870 return myRole; 1871 } 1872 1873 /** 1874 * Sets the value(s) for <b>role</b> () 1875 * 1876 * <p> 1877 * <b>Definition:</b> 1878 * Indicates specific responsibility of an individual within the care plan; e.g. \"Primary physician\", \"Team coordinator\", \"Caregiver\", etc. 1879 * </p> 1880 */ 1881 public Participant setRole(CodeableConceptDt theValue) { 1882 myRole = theValue; 1883 return this; 1884 } 1885 1886 1887 1888 1889 /** 1890 * Gets the value(s) for <b>member</b> (). 1891 * creating it if it does 1892 * not exist. Will not return <code>null</code>. 1893 * 1894 * <p> 1895 * <b>Definition:</b> 1896 * The specific person or organization who is participating/expected to participate in the care plan. 1897 * </p> 1898 */ 1899 public ResourceReferenceDt getMember() { 1900 if (myMember == null) { 1901 myMember = new ResourceReferenceDt(); 1902 } 1903 return myMember; 1904 } 1905 1906 /** 1907 * Sets the value(s) for <b>member</b> () 1908 * 1909 * <p> 1910 * <b>Definition:</b> 1911 * The specific person or organization who is participating/expected to participate in the care plan. 1912 * </p> 1913 */ 1914 public Participant setMember(ResourceReferenceDt theValue) { 1915 myMember = theValue; 1916 return this; 1917 } 1918 1919 1920 1921 1922 1923 1924 } 1925 1926 1927 /** 1928 * Block class for child element: <b>CarePlan.activity</b> () 1929 * 1930 * <p> 1931 * <b>Definition:</b> 1932 * Identifies a planned action to occur as part of the plan. For example, a medication to be used, lab tests to perform, self-monitoring, education, etc. 1933 * </p> 1934 */ 1935 @Block() 1936 public static class Activity 1937 extends BaseIdentifiableElement implements IResourceBlock { 1938 1939 @Child(name="actionResulting", order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 1940 IResource.class }) 1941 @Description( 1942 shortDefinition="", 1943 formalDefinition="Resources that describe follow-on actions resulting from the plan, such as drug prescriptions, encounter records, appointments, etc." 1944 ) 1945 private java.util.List<ResourceReferenceDt> myActionResulting; 1946 1947 @Child(name="progress", type=AnnotationDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 1948 @Description( 1949 shortDefinition="", 1950 formalDefinition="Notes about the adherence/status/progress of the activity" 1951 ) 1952 private java.util.List<AnnotationDt> myProgress; 1953 1954 @Child(name="reference", order=2, min=0, max=1, summary=false, modifier=false, type={ 1955 ca.uhn.fhir.model.dstu2.resource.Appointment.class, ca.uhn.fhir.model.dstu2.resource.CommunicationRequest.class, ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest.class, ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder.class, ca.uhn.fhir.model.dstu2.resource.MedicationOrder.class, ca.uhn.fhir.model.dstu2.resource.NutritionOrder.class, ca.uhn.fhir.model.dstu2.resource.Order.class, ca.uhn.fhir.model.dstu2.resource.ProcedureRequest.class, ca.uhn.fhir.model.dstu2.resource.ProcessRequest.class, ca.uhn.fhir.model.dstu2.resource.ReferralRequest.class, ca.uhn.fhir.model.dstu2.resource.SupplyRequest.class, ca.uhn.fhir.model.dstu2.resource.VisionPrescription.class }) 1956 @Description( 1957 shortDefinition="", 1958 formalDefinition="The details of the proposed activity represented in a specific resource" 1959 ) 1960 private ResourceReferenceDt myReference; 1961 1962 @Child(name="detail", order=3, min=0, max=1, summary=false, modifier=false) 1963 @Description( 1964 shortDefinition="", 1965 formalDefinition="A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc." 1966 ) 1967 private ActivityDetail myDetail; 1968 1969 1970 @Override 1971 public boolean isEmpty() { 1972 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myActionResulting, myProgress, myReference, myDetail); 1973 } 1974 1975 @Override 1976 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1977 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myActionResulting, myProgress, myReference, myDetail); 1978 } 1979 1980 /** 1981 * Gets the value(s) for <b>actionResulting</b> (). 1982 * creating it if it does 1983 * not exist. Will not return <code>null</code>. 1984 * 1985 * <p> 1986 * <b>Definition:</b> 1987 * Resources that describe follow-on actions resulting from the plan, such as drug prescriptions, encounter records, appointments, etc. 1988 * </p> 1989 */ 1990 public java.util.List<ResourceReferenceDt> getActionResulting() { 1991 if (myActionResulting == null) { 1992 myActionResulting = new java.util.ArrayList<ResourceReferenceDt>(); 1993 } 1994 return myActionResulting; 1995 } 1996 1997 /** 1998 * Sets the value(s) for <b>actionResulting</b> () 1999 * 2000 * <p> 2001 * <b>Definition:</b> 2002 * Resources that describe follow-on actions resulting from the plan, such as drug prescriptions, encounter records, appointments, etc. 2003 * </p> 2004 */ 2005 public Activity setActionResulting(java.util.List<ResourceReferenceDt> theValue) { 2006 myActionResulting = theValue; 2007 return this; 2008 } 2009 2010 2011 2012 /** 2013 * Adds and returns a new value for <b>actionResulting</b> () 2014 * 2015 * <p> 2016 * <b>Definition:</b> 2017 * Resources that describe follow-on actions resulting from the plan, such as drug prescriptions, encounter records, appointments, etc. 2018 * </p> 2019 */ 2020 public ResourceReferenceDt addActionResulting() { 2021 ResourceReferenceDt newType = new ResourceReferenceDt(); 2022 getActionResulting().add(newType); 2023 return newType; 2024 } 2025 2026 /** 2027 * Gets the value(s) for <b>progress</b> (). 2028 * creating it if it does 2029 * not exist. Will not return <code>null</code>. 2030 * 2031 * <p> 2032 * <b>Definition:</b> 2033 * Notes about the adherence/status/progress of the activity 2034 * </p> 2035 */ 2036 public java.util.List<AnnotationDt> getProgress() { 2037 if (myProgress == null) { 2038 myProgress = new java.util.ArrayList<AnnotationDt>(); 2039 } 2040 return myProgress; 2041 } 2042 2043 /** 2044 * Sets the value(s) for <b>progress</b> () 2045 * 2046 * <p> 2047 * <b>Definition:</b> 2048 * Notes about the adherence/status/progress of the activity 2049 * </p> 2050 */ 2051 public Activity setProgress(java.util.List<AnnotationDt> theValue) { 2052 myProgress = theValue; 2053 return this; 2054 } 2055 2056 2057 2058 /** 2059 * Adds and returns a new value for <b>progress</b> () 2060 * 2061 * <p> 2062 * <b>Definition:</b> 2063 * Notes about the adherence/status/progress of the activity 2064 * </p> 2065 */ 2066 public AnnotationDt addProgress() { 2067 AnnotationDt newType = new AnnotationDt(); 2068 getProgress().add(newType); 2069 return newType; 2070 } 2071 2072 /** 2073 * Adds a given new value for <b>progress</b> () 2074 * 2075 * <p> 2076 * <b>Definition:</b> 2077 * Notes about the adherence/status/progress of the activity 2078 * </p> 2079 * @param theValue The progress to add (must not be <code>null</code>) 2080 */ 2081 public Activity addProgress(AnnotationDt theValue) { 2082 if (theValue == null) { 2083 throw new NullPointerException("theValue must not be null"); 2084 } 2085 getProgress().add(theValue); 2086 return this; 2087 } 2088 2089 /** 2090 * Gets the first repetition for <b>progress</b> (), 2091 * creating it if it does not already exist. 2092 * 2093 * <p> 2094 * <b>Definition:</b> 2095 * Notes about the adherence/status/progress of the activity 2096 * </p> 2097 */ 2098 public AnnotationDt getProgressFirstRep() { 2099 if (getProgress().isEmpty()) { 2100 return addProgress(); 2101 } 2102 return getProgress().get(0); 2103 } 2104 2105 /** 2106 * Gets the value(s) for <b>reference</b> (). 2107 * creating it if it does 2108 * not exist. Will not return <code>null</code>. 2109 * 2110 * <p> 2111 * <b>Definition:</b> 2112 * The details of the proposed activity represented in a specific resource 2113 * </p> 2114 */ 2115 public ResourceReferenceDt getReference() { 2116 if (myReference == null) { 2117 myReference = new ResourceReferenceDt(); 2118 } 2119 return myReference; 2120 } 2121 2122 /** 2123 * Sets the value(s) for <b>reference</b> () 2124 * 2125 * <p> 2126 * <b>Definition:</b> 2127 * The details of the proposed activity represented in a specific resource 2128 * </p> 2129 */ 2130 public Activity setReference(ResourceReferenceDt theValue) { 2131 myReference = theValue; 2132 return this; 2133 } 2134 2135 2136 2137 2138 /** 2139 * Gets the value(s) for <b>detail</b> (). 2140 * creating it if it does 2141 * not exist. Will not return <code>null</code>. 2142 * 2143 * <p> 2144 * <b>Definition:</b> 2145 * A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc. 2146 * </p> 2147 */ 2148 public ActivityDetail getDetail() { 2149 if (myDetail == null) { 2150 myDetail = new ActivityDetail(); 2151 } 2152 return myDetail; 2153 } 2154 2155 /** 2156 * Sets the value(s) for <b>detail</b> () 2157 * 2158 * <p> 2159 * <b>Definition:</b> 2160 * A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc. 2161 * </p> 2162 */ 2163 public Activity setDetail(ActivityDetail theValue) { 2164 myDetail = theValue; 2165 return this; 2166 } 2167 2168 2169 2170 2171 2172 2173 } 2174 2175 /** 2176 * Block class for child element: <b>CarePlan.activity.detail</b> () 2177 * 2178 * <p> 2179 * <b>Definition:</b> 2180 * A simple summary of a planned activity suitable for a general care plan system (e.g. form driven) that doesn't know about specific resources such as procedure etc. 2181 * </p> 2182 */ 2183 @Block() 2184 public static class ActivityDetail 2185 extends BaseIdentifiableElement implements IResourceBlock { 2186 2187 @Child(name="category", type=CodeableConceptDt.class, order=0, min=0, max=1, summary=false, modifier=false) 2188 @Description( 2189 shortDefinition="", 2190 formalDefinition="High-level categorization of the type of activity in a care plan." 2191 ) 2192 private CodeableConceptDt myCategory; 2193 2194 @Child(name="code", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=false, modifier=false) 2195 @Description( 2196 shortDefinition="", 2197 formalDefinition="Detailed description of the type of planned activity; e.g. What lab test, what procedure, what kind of encounter." 2198 ) 2199 private CodeableConceptDt myCode; 2200 2201 @Child(name="reasonCode", type=CodeableConceptDt.class, order=2, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2202 @Description( 2203 shortDefinition="", 2204 formalDefinition="Provides the rationale that drove the inclusion of this particular activity as part of the plan." 2205 ) 2206 private java.util.List<CodeableConceptDt> myReasonCode; 2207 2208 @Child(name="reasonReference", order=3, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 2209 ca.uhn.fhir.model.dstu2.resource.Condition.class }) 2210 @Description( 2211 shortDefinition="", 2212 formalDefinition="Provides the health condition(s) that drove the inclusion of this particular activity as part of the plan." 2213 ) 2214 private java.util.List<ResourceReferenceDt> myReasonReference; 2215 2216 @Child(name="goal", order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 2217 ca.uhn.fhir.model.dstu2.resource.Goal.class }) 2218 @Description( 2219 shortDefinition="", 2220 formalDefinition="Internal reference that identifies the goals that this activity is intended to contribute towards meeting" 2221 ) 2222 private java.util.List<ResourceReferenceDt> myGoal; 2223 2224 @Child(name="status", type=CodeDt.class, order=5, min=0, max=1, summary=false, modifier=true) 2225 @Description( 2226 shortDefinition="", 2227 formalDefinition="Identifies what progress is being made for the specific activity." 2228 ) 2229 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/care-plan-activity-status") 2230 private BoundCodeDt<CarePlanActivityStatusEnum> myStatus; 2231 2232 @Child(name="statusReason", type=CodeableConceptDt.class, order=6, min=0, max=1, summary=false, modifier=false) 2233 @Description( 2234 shortDefinition="", 2235 formalDefinition="Provides reason why the activity isn't yet started, is on hold, was cancelled, etc." 2236 ) 2237 private CodeableConceptDt myStatusReason; 2238 2239 @Child(name="prohibited", type=BooleanDt.class, order=7, min=1, max=1, summary=false, modifier=true) 2240 @Description( 2241 shortDefinition="", 2242 formalDefinition="If true, indicates that the described activity is one that must NOT be engaged in when following the plan." 2243 ) 2244 private BooleanDt myProhibited; 2245 2246 @Child(name="scheduled", order=8, min=0, max=1, summary=false, modifier=false, type={ 2247 TimingDt.class, PeriodDt.class, StringDt.class }) 2248 @Description( 2249 shortDefinition="", 2250 formalDefinition="The period, timing or frequency upon which the described activity is to occur." 2251 ) 2252 private IDatatype myScheduled; 2253 2254 @Child(name="location", order=9, min=0, max=1, summary=false, modifier=false, type={ 2255 ca.uhn.fhir.model.dstu2.resource.Location.class }) 2256 @Description( 2257 shortDefinition="", 2258 formalDefinition="Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc." 2259 ) 2260 private ResourceReferenceDt myLocation; 2261 2262 @Child(name="performer", order=10, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 2263 ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.Organization.class, ca.uhn.fhir.model.dstu2.resource.RelatedPerson.class, ca.uhn.fhir.model.dstu2.resource.Patient.class }) 2264 @Description( 2265 shortDefinition="", 2266 formalDefinition="Identifies who's expected to be involved in the activity." 2267 ) 2268 private java.util.List<ResourceReferenceDt> myPerformer; 2269 2270 @Child(name="product", order=11, min=0, max=1, summary=false, modifier=false, type={ 2271 CodeableConceptDt.class, Medication.class, Substance.class }) 2272 @Description( 2273 shortDefinition="", 2274 formalDefinition="Identifies the food, drug or other product to be consumed or supplied in the activity." 2275 ) 2276 private IDatatype myProduct; 2277 2278 @Child(name="dailyAmount", type=SimpleQuantityDt.class, order=12, min=0, max=1, summary=false, modifier=false) 2279 @Description( 2280 shortDefinition="", 2281 formalDefinition="Identifies the quantity expected to be consumed in a given day." 2282 ) 2283 private SimpleQuantityDt myDailyAmount; 2284 2285 @Child(name="quantity", type=SimpleQuantityDt.class, order=13, min=0, max=1, summary=false, modifier=false) 2286 @Description( 2287 shortDefinition="", 2288 formalDefinition="Identifies the quantity expected to be supplied, administered or consumed by the subject" 2289 ) 2290 private SimpleQuantityDt myQuantity; 2291 2292 @Child(name="description", type=StringDt.class, order=14, min=0, max=1, summary=false, modifier=false) 2293 @Description( 2294 shortDefinition="", 2295 formalDefinition="This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc." 2296 ) 2297 private StringDt myDescription; 2298 2299 2300 @Override 2301 public boolean isEmpty() { 2302 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCategory, myCode, myReasonCode, myReasonReference, myGoal, myStatus, myStatusReason, myProhibited, myScheduled, myLocation, myPerformer, myProduct, myDailyAmount, myQuantity, myDescription); 2303 } 2304 2305 @Override 2306 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2307 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCategory, myCode, myReasonCode, myReasonReference, myGoal, myStatus, myStatusReason, myProhibited, myScheduled, myLocation, myPerformer, myProduct, myDailyAmount, myQuantity, myDescription); 2308 } 2309 2310 /** 2311 * Gets the value(s) for <b>category</b> (). 2312 * creating it if it does 2313 * not exist. Will not return <code>null</code>. 2314 * 2315 * <p> 2316 * <b>Definition:</b> 2317 * High-level categorization of the type of activity in a care plan. 2318 * </p> 2319 */ 2320 public CodeableConceptDt getCategory() { 2321 if (myCategory == null) { 2322 myCategory = new CodeableConceptDt(); 2323 } 2324 return myCategory; 2325 } 2326 2327 /** 2328 * Sets the value(s) for <b>category</b> () 2329 * 2330 * <p> 2331 * <b>Definition:</b> 2332 * High-level categorization of the type of activity in a care plan. 2333 * </p> 2334 */ 2335 public ActivityDetail setCategory(CodeableConceptDt theValue) { 2336 myCategory = theValue; 2337 return this; 2338 } 2339 2340 2341 2342 2343 /** 2344 * Gets the value(s) for <b>code</b> (). 2345 * creating it if it does 2346 * not exist. Will not return <code>null</code>. 2347 * 2348 * <p> 2349 * <b>Definition:</b> 2350 * Detailed description of the type of planned activity; e.g. What lab test, what procedure, what kind of encounter. 2351 * </p> 2352 */ 2353 public CodeableConceptDt getCode() { 2354 if (myCode == null) { 2355 myCode = new CodeableConceptDt(); 2356 } 2357 return myCode; 2358 } 2359 2360 /** 2361 * Sets the value(s) for <b>code</b> () 2362 * 2363 * <p> 2364 * <b>Definition:</b> 2365 * Detailed description of the type of planned activity; e.g. What lab test, what procedure, what kind of encounter. 2366 * </p> 2367 */ 2368 public ActivityDetail setCode(CodeableConceptDt theValue) { 2369 myCode = theValue; 2370 return this; 2371 } 2372 2373 2374 2375 2376 /** 2377 * Gets the value(s) for <b>reasonCode</b> (). 2378 * creating it if it does 2379 * not exist. Will not return <code>null</code>. 2380 * 2381 * <p> 2382 * <b>Definition:</b> 2383 * Provides the rationale that drove the inclusion of this particular activity as part of the plan. 2384 * </p> 2385 */ 2386 public java.util.List<CodeableConceptDt> getReasonCode() { 2387 if (myReasonCode == null) { 2388 myReasonCode = new java.util.ArrayList<CodeableConceptDt>(); 2389 } 2390 return myReasonCode; 2391 } 2392 2393 /** 2394 * Sets the value(s) for <b>reasonCode</b> () 2395 * 2396 * <p> 2397 * <b>Definition:</b> 2398 * Provides the rationale that drove the inclusion of this particular activity as part of the plan. 2399 * </p> 2400 */ 2401 public ActivityDetail setReasonCode(java.util.List<CodeableConceptDt> theValue) { 2402 myReasonCode = theValue; 2403 return this; 2404 } 2405 2406 2407 2408 /** 2409 * Adds and returns a new value for <b>reasonCode</b> () 2410 * 2411 * <p> 2412 * <b>Definition:</b> 2413 * Provides the rationale that drove the inclusion of this particular activity as part of the plan. 2414 * </p> 2415 */ 2416 public CodeableConceptDt addReasonCode() { 2417 CodeableConceptDt newType = new CodeableConceptDt(); 2418 getReasonCode().add(newType); 2419 return newType; 2420 } 2421 2422 /** 2423 * Adds a given new value for <b>reasonCode</b> () 2424 * 2425 * <p> 2426 * <b>Definition:</b> 2427 * Provides the rationale that drove the inclusion of this particular activity as part of the plan. 2428 * </p> 2429 * @param theValue The reasonCode to add (must not be <code>null</code>) 2430 */ 2431 public ActivityDetail addReasonCode(CodeableConceptDt theValue) { 2432 if (theValue == null) { 2433 throw new NullPointerException("theValue must not be null"); 2434 } 2435 getReasonCode().add(theValue); 2436 return this; 2437 } 2438 2439 /** 2440 * Gets the first repetition for <b>reasonCode</b> (), 2441 * creating it if it does not already exist. 2442 * 2443 * <p> 2444 * <b>Definition:</b> 2445 * Provides the rationale that drove the inclusion of this particular activity as part of the plan. 2446 * </p> 2447 */ 2448 public CodeableConceptDt getReasonCodeFirstRep() { 2449 if (getReasonCode().isEmpty()) { 2450 return addReasonCode(); 2451 } 2452 return getReasonCode().get(0); 2453 } 2454 2455 /** 2456 * Gets the value(s) for <b>reasonReference</b> (). 2457 * creating it if it does 2458 * not exist. Will not return <code>null</code>. 2459 * 2460 * <p> 2461 * <b>Definition:</b> 2462 * Provides the health condition(s) that drove the inclusion of this particular activity as part of the plan. 2463 * </p> 2464 */ 2465 public java.util.List<ResourceReferenceDt> getReasonReference() { 2466 if (myReasonReference == null) { 2467 myReasonReference = new java.util.ArrayList<ResourceReferenceDt>(); 2468 } 2469 return myReasonReference; 2470 } 2471 2472 /** 2473 * Sets the value(s) for <b>reasonReference</b> () 2474 * 2475 * <p> 2476 * <b>Definition:</b> 2477 * Provides the health condition(s) that drove the inclusion of this particular activity as part of the plan. 2478 * </p> 2479 */ 2480 public ActivityDetail setReasonReference(java.util.List<ResourceReferenceDt> theValue) { 2481 myReasonReference = theValue; 2482 return this; 2483 } 2484 2485 2486 2487 /** 2488 * Adds and returns a new value for <b>reasonReference</b> () 2489 * 2490 * <p> 2491 * <b>Definition:</b> 2492 * Provides the health condition(s) that drove the inclusion of this particular activity as part of the plan. 2493 * </p> 2494 */ 2495 public ResourceReferenceDt addReasonReference() { 2496 ResourceReferenceDt newType = new ResourceReferenceDt(); 2497 getReasonReference().add(newType); 2498 return newType; 2499 } 2500 2501 /** 2502 * Gets the value(s) for <b>goal</b> (). 2503 * creating it if it does 2504 * not exist. Will not return <code>null</code>. 2505 * 2506 * <p> 2507 * <b>Definition:</b> 2508 * Internal reference that identifies the goals that this activity is intended to contribute towards meeting 2509 * </p> 2510 */ 2511 public java.util.List<ResourceReferenceDt> getGoal() { 2512 if (myGoal == null) { 2513 myGoal = new java.util.ArrayList<ResourceReferenceDt>(); 2514 } 2515 return myGoal; 2516 } 2517 2518 /** 2519 * Sets the value(s) for <b>goal</b> () 2520 * 2521 * <p> 2522 * <b>Definition:</b> 2523 * Internal reference that identifies the goals that this activity is intended to contribute towards meeting 2524 * </p> 2525 */ 2526 public ActivityDetail setGoal(java.util.List<ResourceReferenceDt> theValue) { 2527 myGoal = theValue; 2528 return this; 2529 } 2530 2531 2532 2533 /** 2534 * Adds and returns a new value for <b>goal</b> () 2535 * 2536 * <p> 2537 * <b>Definition:</b> 2538 * Internal reference that identifies the goals that this activity is intended to contribute towards meeting 2539 * </p> 2540 */ 2541 public ResourceReferenceDt addGoal() { 2542 ResourceReferenceDt newType = new ResourceReferenceDt(); 2543 getGoal().add(newType); 2544 return newType; 2545 } 2546 2547 /** 2548 * Gets the value(s) for <b>status</b> (). 2549 * creating it if it does 2550 * not exist. Will not return <code>null</code>. 2551 * 2552 * <p> 2553 * <b>Definition:</b> 2554 * Identifies what progress is being made for the specific activity. 2555 * </p> 2556 */ 2557 public BoundCodeDt<CarePlanActivityStatusEnum> getStatusElement() { 2558 if (myStatus == null) { 2559 myStatus = new BoundCodeDt<CarePlanActivityStatusEnum>(CarePlanActivityStatusEnum.VALUESET_BINDER); 2560 } 2561 return myStatus; 2562 } 2563 2564 2565 /** 2566 * Gets the value(s) for <b>status</b> (). 2567 * creating it if it does 2568 * not exist. This method may return <code>null</code>. 2569 * 2570 * <p> 2571 * <b>Definition:</b> 2572 * Identifies what progress is being made for the specific activity. 2573 * </p> 2574 */ 2575 public String getStatus() { 2576 return getStatusElement().getValue(); 2577 } 2578 2579 /** 2580 * Sets the value(s) for <b>status</b> () 2581 * 2582 * <p> 2583 * <b>Definition:</b> 2584 * Identifies what progress is being made for the specific activity. 2585 * </p> 2586 */ 2587 public ActivityDetail setStatus(BoundCodeDt<CarePlanActivityStatusEnum> theValue) { 2588 myStatus = theValue; 2589 return this; 2590 } 2591 2592 2593 2594 /** 2595 * Sets the value(s) for <b>status</b> () 2596 * 2597 * <p> 2598 * <b>Definition:</b> 2599 * Identifies what progress is being made for the specific activity. 2600 * </p> 2601 */ 2602 public ActivityDetail setStatus(CarePlanActivityStatusEnum theValue) { 2603 setStatus(new BoundCodeDt<CarePlanActivityStatusEnum>(CarePlanActivityStatusEnum.VALUESET_BINDER, theValue)); 2604 2605/* 2606 getStatusElement().setValueAsEnum(theValue); 2607*/ 2608 return this; 2609 } 2610 2611 2612 /** 2613 * Gets the value(s) for <b>statusReason</b> (). 2614 * creating it if it does 2615 * not exist. Will not return <code>null</code>. 2616 * 2617 * <p> 2618 * <b>Definition:</b> 2619 * Provides reason why the activity isn't yet started, is on hold, was cancelled, etc. 2620 * </p> 2621 */ 2622 public CodeableConceptDt getStatusReason() { 2623 if (myStatusReason == null) { 2624 myStatusReason = new CodeableConceptDt(); 2625 } 2626 return myStatusReason; 2627 } 2628 2629 /** 2630 * Sets the value(s) for <b>statusReason</b> () 2631 * 2632 * <p> 2633 * <b>Definition:</b> 2634 * Provides reason why the activity isn't yet started, is on hold, was cancelled, etc. 2635 * </p> 2636 */ 2637 public ActivityDetail setStatusReason(CodeableConceptDt theValue) { 2638 myStatusReason = theValue; 2639 return this; 2640 } 2641 2642 2643 2644 2645 /** 2646 * Gets the value(s) for <b>prohibited</b> (). 2647 * creating it if it does 2648 * not exist. Will not return <code>null</code>. 2649 * 2650 * <p> 2651 * <b>Definition:</b> 2652 * If true, indicates that the described activity is one that must NOT be engaged in when following the plan. 2653 * </p> 2654 */ 2655 public BooleanDt getProhibitedElement() { 2656 if (myProhibited == null) { 2657 myProhibited = new BooleanDt(); 2658 } 2659 return myProhibited; 2660 } 2661 2662 2663 /** 2664 * Gets the value(s) for <b>prohibited</b> (). 2665 * creating it if it does 2666 * not exist. This method may return <code>null</code>. 2667 * 2668 * <p> 2669 * <b>Definition:</b> 2670 * If true, indicates that the described activity is one that must NOT be engaged in when following the plan. 2671 * </p> 2672 */ 2673 public Boolean getProhibited() { 2674 return getProhibitedElement().getValue(); 2675 } 2676 2677 /** 2678 * Sets the value(s) for <b>prohibited</b> () 2679 * 2680 * <p> 2681 * <b>Definition:</b> 2682 * If true, indicates that the described activity is one that must NOT be engaged in when following the plan. 2683 * </p> 2684 */ 2685 public ActivityDetail setProhibited(BooleanDt theValue) { 2686 myProhibited = theValue; 2687 return this; 2688 } 2689 2690 2691 2692 /** 2693 * Sets the value for <b>prohibited</b> () 2694 * 2695 * <p> 2696 * <b>Definition:</b> 2697 * If true, indicates that the described activity is one that must NOT be engaged in when following the plan. 2698 * </p> 2699 */ 2700 public ActivityDetail setProhibited( boolean theBoolean) { 2701 myProhibited = new BooleanDt(theBoolean); 2702 return this; 2703 } 2704 2705 2706 /** 2707 * Gets the value(s) for <b>scheduled[x]</b> (). 2708 * creating it if it does 2709 * not exist. Will not return <code>null</code>. 2710 * 2711 * <p> 2712 * <b>Definition:</b> 2713 * The period, timing or frequency upon which the described activity is to occur. 2714 * </p> 2715 */ 2716 public IDatatype getScheduled() { 2717 return myScheduled; 2718 } 2719 2720 /** 2721 * Sets the value(s) for <b>scheduled[x]</b> () 2722 * 2723 * <p> 2724 * <b>Definition:</b> 2725 * The period, timing or frequency upon which the described activity is to occur. 2726 * </p> 2727 */ 2728 public ActivityDetail setScheduled(IDatatype theValue) { 2729 myScheduled = theValue; 2730 return this; 2731 } 2732 2733 2734 2735 2736 /** 2737 * Gets the value(s) for <b>location</b> (). 2738 * creating it if it does 2739 * not exist. Will not return <code>null</code>. 2740 * 2741 * <p> 2742 * <b>Definition:</b> 2743 * Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc. 2744 * </p> 2745 */ 2746 public ResourceReferenceDt getLocation() { 2747 if (myLocation == null) { 2748 myLocation = new ResourceReferenceDt(); 2749 } 2750 return myLocation; 2751 } 2752 2753 /** 2754 * Sets the value(s) for <b>location</b> () 2755 * 2756 * <p> 2757 * <b>Definition:</b> 2758 * Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc. 2759 * </p> 2760 */ 2761 public ActivityDetail setLocation(ResourceReferenceDt theValue) { 2762 myLocation = theValue; 2763 return this; 2764 } 2765 2766 2767 2768 2769 /** 2770 * Gets the value(s) for <b>performer</b> (). 2771 * creating it if it does 2772 * not exist. Will not return <code>null</code>. 2773 * 2774 * <p> 2775 * <b>Definition:</b> 2776 * Identifies who's expected to be involved in the activity. 2777 * </p> 2778 */ 2779 public java.util.List<ResourceReferenceDt> getPerformer() { 2780 if (myPerformer == null) { 2781 myPerformer = new java.util.ArrayList<ResourceReferenceDt>(); 2782 } 2783 return myPerformer; 2784 } 2785 2786 /** 2787 * Sets the value(s) for <b>performer</b> () 2788 * 2789 * <p> 2790 * <b>Definition:</b> 2791 * Identifies who's expected to be involved in the activity. 2792 * </p> 2793 */ 2794 public ActivityDetail setPerformer(java.util.List<ResourceReferenceDt> theValue) { 2795 myPerformer = theValue; 2796 return this; 2797 } 2798 2799 2800 2801 /** 2802 * Adds and returns a new value for <b>performer</b> () 2803 * 2804 * <p> 2805 * <b>Definition:</b> 2806 * Identifies who's expected to be involved in the activity. 2807 * </p> 2808 */ 2809 public ResourceReferenceDt addPerformer() { 2810 ResourceReferenceDt newType = new ResourceReferenceDt(); 2811 getPerformer().add(newType); 2812 return newType; 2813 } 2814 2815 /** 2816 * Gets the value(s) for <b>product[x]</b> (). 2817 * creating it if it does 2818 * not exist. Will not return <code>null</code>. 2819 * 2820 * <p> 2821 * <b>Definition:</b> 2822 * Identifies the food, drug or other product to be consumed or supplied in the activity. 2823 * </p> 2824 */ 2825 public IDatatype getProduct() { 2826 return myProduct; 2827 } 2828 2829 /** 2830 * Sets the value(s) for <b>product[x]</b> () 2831 * 2832 * <p> 2833 * <b>Definition:</b> 2834 * Identifies the food, drug or other product to be consumed or supplied in the activity. 2835 * </p> 2836 */ 2837 public ActivityDetail setProduct(IDatatype theValue) { 2838 myProduct = theValue; 2839 return this; 2840 } 2841 2842 2843 2844 2845 /** 2846 * Gets the value(s) for <b>dailyAmount</b> (). 2847 * creating it if it does 2848 * not exist. Will not return <code>null</code>. 2849 * 2850 * <p> 2851 * <b>Definition:</b> 2852 * Identifies the quantity expected to be consumed in a given day. 2853 * </p> 2854 */ 2855 public SimpleQuantityDt getDailyAmount() { 2856 if (myDailyAmount == null) { 2857 myDailyAmount = new SimpleQuantityDt(); 2858 } 2859 return myDailyAmount; 2860 } 2861 2862 /** 2863 * Sets the value(s) for <b>dailyAmount</b> () 2864 * 2865 * <p> 2866 * <b>Definition:</b> 2867 * Identifies the quantity expected to be consumed in a given day. 2868 * </p> 2869 */ 2870 public ActivityDetail setDailyAmount(SimpleQuantityDt theValue) { 2871 myDailyAmount = theValue; 2872 return this; 2873 } 2874 2875 2876 2877 2878 /** 2879 * Gets the value(s) for <b>quantity</b> (). 2880 * creating it if it does 2881 * not exist. Will not return <code>null</code>. 2882 * 2883 * <p> 2884 * <b>Definition:</b> 2885 * Identifies the quantity expected to be supplied, administered or consumed by the subject 2886 * </p> 2887 */ 2888 public SimpleQuantityDt getQuantity() { 2889 if (myQuantity == null) { 2890 myQuantity = new SimpleQuantityDt(); 2891 } 2892 return myQuantity; 2893 } 2894 2895 /** 2896 * Sets the value(s) for <b>quantity</b> () 2897 * 2898 * <p> 2899 * <b>Definition:</b> 2900 * Identifies the quantity expected to be supplied, administered or consumed by the subject 2901 * </p> 2902 */ 2903 public ActivityDetail setQuantity(SimpleQuantityDt theValue) { 2904 myQuantity = theValue; 2905 return this; 2906 } 2907 2908 2909 2910 2911 /** 2912 * Gets the value(s) for <b>description</b> (). 2913 * creating it if it does 2914 * not exist. Will not return <code>null</code>. 2915 * 2916 * <p> 2917 * <b>Definition:</b> 2918 * This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc. 2919 * </p> 2920 */ 2921 public StringDt getDescriptionElement() { 2922 if (myDescription == null) { 2923 myDescription = new StringDt(); 2924 } 2925 return myDescription; 2926 } 2927 2928 2929 /** 2930 * Gets the value(s) for <b>description</b> (). 2931 * creating it if it does 2932 * not exist. This method may return <code>null</code>. 2933 * 2934 * <p> 2935 * <b>Definition:</b> 2936 * This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc. 2937 * </p> 2938 */ 2939 public String getDescription() { 2940 return getDescriptionElement().getValue(); 2941 } 2942 2943 /** 2944 * Sets the value(s) for <b>description</b> () 2945 * 2946 * <p> 2947 * <b>Definition:</b> 2948 * This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc. 2949 * </p> 2950 */ 2951 public ActivityDetail setDescription(StringDt theValue) { 2952 myDescription = theValue; 2953 return this; 2954 } 2955 2956 2957 2958 /** 2959 * Sets the value for <b>description</b> () 2960 * 2961 * <p> 2962 * <b>Definition:</b> 2963 * This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc. 2964 * </p> 2965 */ 2966 public ActivityDetail setDescription( String theString) { 2967 myDescription = new StringDt(theString); 2968 return this; 2969 } 2970 2971 2972 2973 2974 } 2975 2976 2977 2978 2979 2980 @Override 2981 public String getResourceName() { 2982 return "CarePlan"; 2983 } 2984 2985 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2986 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2987 } 2988 2989 2990}