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>DiagnosticOrder</b> Resource 282 * (clinical.diagnostics) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * A record of a request for a diagnostic investigation service to be performed. 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/DiagnosticOrder">http://hl7.org/fhir/profiles/DiagnosticOrder</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="DiagnosticOrder", profile="http://hl7.org/fhir/profiles/DiagnosticOrder", id="diagnosticorder") 301public class DiagnosticOrder extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource { 303 304 /** 305 * Search parameter constant for <b>actor</b> 306 * <p> 307 * Description: <b></b><br> 308 * Type: <b>reference</b><br> 309 * Path: <b>DiagnosticOrder.event.actor | DiagnosticOrder.item.event.actor</b><br> 310 * </p> 311 */ 312 @SearchParamDefinition(name="actor", path="DiagnosticOrder.event.actor | DiagnosticOrder.item.event.actor", description="", type="reference" , providesMembershipIn={ 313 @Compartment(name="RelatedPerson") , @Compartment(name="Practitioner") } 314 ) 315 public static final String SP_ACTOR = "actor"; 316 317 /** 318 * <b>Fluent Client</b> search parameter constant for <b>actor</b> 319 * <p> 320 * Description: <b></b><br> 321 * Type: <b>reference</b><br> 322 * Path: <b>DiagnosticOrder.event.actor | DiagnosticOrder.item.event.actor</b><br> 323 * </p> 324 */ 325 public static final ReferenceClientParam ACTOR = new ReferenceClientParam(SP_ACTOR); 326 327 /** 328 * Search parameter constant for <b>bodysite</b> 329 * <p> 330 * Description: <b></b><br> 331 * Type: <b>token</b><br> 332 * Path: <b>DiagnosticOrder.item.bodySite</b><br> 333 * </p> 334 */ 335 @SearchParamDefinition(name="bodysite", path="DiagnosticOrder.item.bodySite", description="", type="token" ) 336 public static final String SP_BODYSITE = "bodysite"; 337 338 /** 339 * <b>Fluent Client</b> search parameter constant for <b>bodysite</b> 340 * <p> 341 * Description: <b></b><br> 342 * Type: <b>token</b><br> 343 * Path: <b>DiagnosticOrder.item.bodySite</b><br> 344 * </p> 345 */ 346 public static final TokenClientParam BODYSITE = new TokenClientParam(SP_BODYSITE); 347 348 /** 349 * Search parameter constant for <b>code</b> 350 * <p> 351 * Description: <b></b><br> 352 * Type: <b>token</b><br> 353 * Path: <b>DiagnosticOrder.item.code</b><br> 354 * </p> 355 */ 356 @SearchParamDefinition(name="code", path="DiagnosticOrder.item.code", description="", type="token" ) 357 public static final String SP_CODE = "code"; 358 359 /** 360 * <b>Fluent Client</b> search parameter constant for <b>code</b> 361 * <p> 362 * Description: <b></b><br> 363 * Type: <b>token</b><br> 364 * Path: <b>DiagnosticOrder.item.code</b><br> 365 * </p> 366 */ 367 public static final TokenClientParam CODE = new TokenClientParam(SP_CODE); 368 369 /** 370 * Search parameter constant for <b>event-date</b> 371 * <p> 372 * Description: <b></b><br> 373 * Type: <b>date</b><br> 374 * Path: <b>DiagnosticOrder.event.dateTime</b><br> 375 * </p> 376 */ 377 @SearchParamDefinition(name="event-date", path="DiagnosticOrder.event.dateTime", description="", type="date" ) 378 public static final String SP_EVENT_DATE = "event-date"; 379 380 /** 381 * <b>Fluent Client</b> search parameter constant for <b>event-date</b> 382 * <p> 383 * Description: <b></b><br> 384 * Type: <b>date</b><br> 385 * Path: <b>DiagnosticOrder.event.dateTime</b><br> 386 * </p> 387 */ 388 public static final DateClientParam EVENT_DATE = new DateClientParam(SP_EVENT_DATE); 389 390 /** 391 * Search parameter constant for <b>encounter</b> 392 * <p> 393 * Description: <b></b><br> 394 * Type: <b>reference</b><br> 395 * Path: <b>DiagnosticOrder.encounter</b><br> 396 * </p> 397 */ 398 @SearchParamDefinition(name="encounter", path="DiagnosticOrder.encounter", description="", type="reference" , providesMembershipIn={ 399 @Compartment(name="Encounter") } 400 ) 401 public static final String SP_ENCOUNTER = "encounter"; 402 403 /** 404 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 405 * <p> 406 * Description: <b></b><br> 407 * Type: <b>reference</b><br> 408 * Path: <b>DiagnosticOrder.encounter</b><br> 409 * </p> 410 */ 411 public static final ReferenceClientParam ENCOUNTER = new ReferenceClientParam(SP_ENCOUNTER); 412 413 /** 414 * Search parameter constant for <b>identifier</b> 415 * <p> 416 * Description: <b></b><br> 417 * Type: <b>token</b><br> 418 * Path: <b>DiagnosticOrder.identifier</b><br> 419 * </p> 420 */ 421 @SearchParamDefinition(name="identifier", path="DiagnosticOrder.identifier", description="", type="token" ) 422 public static final String SP_IDENTIFIER = "identifier"; 423 424 /** 425 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 426 * <p> 427 * Description: <b></b><br> 428 * Type: <b>token</b><br> 429 * Path: <b>DiagnosticOrder.identifier</b><br> 430 * </p> 431 */ 432 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 433 434 /** 435 * Search parameter constant for <b>item-date</b> 436 * <p> 437 * Description: <b></b><br> 438 * Type: <b>date</b><br> 439 * Path: <b>DiagnosticOrder.item.event.dateTime</b><br> 440 * </p> 441 */ 442 @SearchParamDefinition(name="item-date", path="DiagnosticOrder.item.event.dateTime", description="", type="date" ) 443 public static final String SP_ITEM_DATE = "item-date"; 444 445 /** 446 * <b>Fluent Client</b> search parameter constant for <b>item-date</b> 447 * <p> 448 * Description: <b></b><br> 449 * Type: <b>date</b><br> 450 * Path: <b>DiagnosticOrder.item.event.dateTime</b><br> 451 * </p> 452 */ 453 public static final DateClientParam ITEM_DATE = new DateClientParam(SP_ITEM_DATE); 454 455 /** 456 * Search parameter constant for <b>item-past-status</b> 457 * <p> 458 * Description: <b></b><br> 459 * Type: <b>token</b><br> 460 * Path: <b>DiagnosticOrder.item.event.status</b><br> 461 * </p> 462 */ 463 @SearchParamDefinition(name="item-past-status", path="DiagnosticOrder.item.event.status", description="", type="token" ) 464 public static final String SP_ITEM_PAST_STATUS = "item-past-status"; 465 466 /** 467 * <b>Fluent Client</b> search parameter constant for <b>item-past-status</b> 468 * <p> 469 * Description: <b></b><br> 470 * Type: <b>token</b><br> 471 * Path: <b>DiagnosticOrder.item.event.status</b><br> 472 * </p> 473 */ 474 public static final TokenClientParam ITEM_PAST_STATUS = new TokenClientParam(SP_ITEM_PAST_STATUS); 475 476 /** 477 * Search parameter constant for <b>item-status</b> 478 * <p> 479 * Description: <b></b><br> 480 * Type: <b>token</b><br> 481 * Path: <b>DiagnosticOrder.item.status</b><br> 482 * </p> 483 */ 484 @SearchParamDefinition(name="item-status", path="DiagnosticOrder.item.status", description="", type="token" ) 485 public static final String SP_ITEM_STATUS = "item-status"; 486 487 /** 488 * <b>Fluent Client</b> search parameter constant for <b>item-status</b> 489 * <p> 490 * Description: <b></b><br> 491 * Type: <b>token</b><br> 492 * Path: <b>DiagnosticOrder.item.status</b><br> 493 * </p> 494 */ 495 public static final TokenClientParam ITEM_STATUS = new TokenClientParam(SP_ITEM_STATUS); 496 497 /** 498 * Search parameter constant for <b>orderer</b> 499 * <p> 500 * Description: <b></b><br> 501 * Type: <b>reference</b><br> 502 * Path: <b>DiagnosticOrder.orderer</b><br> 503 * </p> 504 */ 505 @SearchParamDefinition(name="orderer", path="DiagnosticOrder.orderer", description="", type="reference" , providesMembershipIn={ 506 @Compartment(name="RelatedPerson") } 507 ) 508 public static final String SP_ORDERER = "orderer"; 509 510 /** 511 * <b>Fluent Client</b> search parameter constant for <b>orderer</b> 512 * <p> 513 * Description: <b></b><br> 514 * Type: <b>reference</b><br> 515 * Path: <b>DiagnosticOrder.orderer</b><br> 516 * </p> 517 */ 518 public static final ReferenceClientParam ORDERER = new ReferenceClientParam(SP_ORDERER); 519 520 /** 521 * Search parameter constant for <b>event-status</b> 522 * <p> 523 * Description: <b></b><br> 524 * Type: <b>token</b><br> 525 * Path: <b>DiagnosticOrder.event.status</b><br> 526 * </p> 527 */ 528 @SearchParamDefinition(name="event-status", path="DiagnosticOrder.event.status", description="", type="token" ) 529 public static final String SP_EVENT_STATUS = "event-status"; 530 531 /** 532 * <b>Fluent Client</b> search parameter constant for <b>event-status</b> 533 * <p> 534 * Description: <b></b><br> 535 * Type: <b>token</b><br> 536 * Path: <b>DiagnosticOrder.event.status</b><br> 537 * </p> 538 */ 539 public static final TokenClientParam EVENT_STATUS = new TokenClientParam(SP_EVENT_STATUS); 540 541 /** 542 * Search parameter constant for <b>specimen</b> 543 * <p> 544 * Description: <b></b><br> 545 * Type: <b>reference</b><br> 546 * Path: <b>DiagnosticOrder.specimen | DiagnosticOrder.item.specimen</b><br> 547 * </p> 548 */ 549 @SearchParamDefinition(name="specimen", path="DiagnosticOrder.specimen | DiagnosticOrder.item.specimen", description="", type="reference" ) 550 public static final String SP_SPECIMEN = "specimen"; 551 552 /** 553 * <b>Fluent Client</b> search parameter constant for <b>specimen</b> 554 * <p> 555 * Description: <b></b><br> 556 * Type: <b>reference</b><br> 557 * Path: <b>DiagnosticOrder.specimen | DiagnosticOrder.item.specimen</b><br> 558 * </p> 559 */ 560 public static final ReferenceClientParam SPECIMEN = new ReferenceClientParam(SP_SPECIMEN); 561 562 /** 563 * Search parameter constant for <b>status</b> 564 * <p> 565 * Description: <b></b><br> 566 * Type: <b>token</b><br> 567 * Path: <b>DiagnosticOrder.status</b><br> 568 * </p> 569 */ 570 @SearchParamDefinition(name="status", path="DiagnosticOrder.status", description="", type="token" ) 571 public static final String SP_STATUS = "status"; 572 573 /** 574 * <b>Fluent Client</b> search parameter constant for <b>status</b> 575 * <p> 576 * Description: <b></b><br> 577 * Type: <b>token</b><br> 578 * Path: <b>DiagnosticOrder.status</b><br> 579 * </p> 580 */ 581 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 582 583 /** 584 * Search parameter constant for <b>subject</b> 585 * <p> 586 * Description: <b></b><br> 587 * Type: <b>reference</b><br> 588 * Path: <b>DiagnosticOrder.subject</b><br> 589 * </p> 590 */ 591 @SearchParamDefinition(name="subject", path="DiagnosticOrder.subject", description="", type="reference" , providesMembershipIn={ 592 @Compartment(name="Patient") , @Compartment(name="Practitioner") } 593 ) 594 public static final String SP_SUBJECT = "subject"; 595 596 /** 597 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 598 * <p> 599 * Description: <b></b><br> 600 * Type: <b>reference</b><br> 601 * Path: <b>DiagnosticOrder.subject</b><br> 602 * </p> 603 */ 604 public static final ReferenceClientParam SUBJECT = new ReferenceClientParam(SP_SUBJECT); 605 606 /** 607 * Search parameter constant for <b>patient</b> 608 * <p> 609 * Description: <b></b><br> 610 * Type: <b>reference</b><br> 611 * Path: <b>DiagnosticOrder.subject</b><br> 612 * </p> 613 */ 614 @SearchParamDefinition(name="patient", path="DiagnosticOrder.subject", description="", type="reference" , target={ 615 ca.uhn.fhir.model.dstu2.resource.Patient.class } 616 ) 617 public static final String SP_PATIENT = "patient"; 618 619 /** 620 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 621 * <p> 622 * Description: <b></b><br> 623 * Type: <b>reference</b><br> 624 * Path: <b>DiagnosticOrder.subject</b><br> 625 * </p> 626 */ 627 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 628 629 /** 630 * Search parameter constant for <b>item-past-status-item-date</b> 631 * <p> 632 * Description: <b>A combination of item-past-status and item-date</b><br> 633 * Type: <b>composite</b><br> 634 * Path: <b>item-past-status & item-date</b><br> 635 * </p> 636 */ 637 @SearchParamDefinition(name="item-past-status-item-date", path="item-past-status & item-date", description="A combination of item-past-status and item-date", type="composite" , compositeOf={ "item-past-status", "item-date" } ) 638 public static final String SP_ITEM_PAST_STATUS_ITEM_DATE = "item-past-status-item-date"; 639 640 /** 641 * <b>Fluent Client</b> search parameter constant for <b>item-past-status-item-date</b> 642 * <p> 643 * Description: <b>A combination of item-past-status and item-date</b><br> 644 * Type: <b>composite</b><br> 645 * Path: <b>item-past-status & item-date</b><br> 646 * </p> 647 */ 648 public static final CompositeClientParam<TokenClientParam, DateClientParam> ITEM_PAST_STATUS_ITEM_DATE = new CompositeClientParam<TokenClientParam, DateClientParam>(SP_ITEM_PAST_STATUS_ITEM_DATE); 649 650 /** 651 * Search parameter constant for <b>event-status-event-date</b> 652 * <p> 653 * Description: <b>A combination of past-status and date</b><br> 654 * Type: <b>composite</b><br> 655 * Path: <b>event-status & event-date</b><br> 656 * </p> 657 */ 658 @SearchParamDefinition(name="event-status-event-date", path="event-status & event-date", description="A combination of past-status and date", type="composite" , compositeOf={ "event-status", "event-date" } ) 659 public static final String SP_EVENT_STATUS_EVENT_DATE = "event-status-event-date"; 660 661 /** 662 * <b>Fluent Client</b> search parameter constant for <b>event-status-event-date</b> 663 * <p> 664 * Description: <b>A combination of past-status and date</b><br> 665 * Type: <b>composite</b><br> 666 * Path: <b>event-status & event-date</b><br> 667 * </p> 668 */ 669 public static final CompositeClientParam<TokenClientParam, DateClientParam> EVENT_STATUS_EVENT_DATE = new CompositeClientParam<TokenClientParam, DateClientParam>(SP_EVENT_STATUS_EVENT_DATE); 670 671 672 /** 673 * Constant for fluent queries to be used to add include statements. Specifies 674 * the path value of "<b>DiagnosticOrder:actor</b>". 675 */ 676 public static final Include INCLUDE_ACTOR = new Include("DiagnosticOrder:actor"); 677 678 /** 679 * Constant for fluent queries to be used to add include statements. Specifies 680 * the path value of "<b>DiagnosticOrder:encounter</b>". 681 */ 682 public static final Include INCLUDE_ENCOUNTER = new Include("DiagnosticOrder:encounter"); 683 684 /** 685 * Constant for fluent queries to be used to add include statements. Specifies 686 * the path value of "<b>DiagnosticOrder:orderer</b>". 687 */ 688 public static final Include INCLUDE_ORDERER = new Include("DiagnosticOrder:orderer"); 689 690 /** 691 * Constant for fluent queries to be used to add include statements. Specifies 692 * the path value of "<b>DiagnosticOrder:patient</b>". 693 */ 694 public static final Include INCLUDE_PATIENT = new Include("DiagnosticOrder:patient"); 695 696 /** 697 * Constant for fluent queries to be used to add include statements. Specifies 698 * the path value of "<b>DiagnosticOrder:specimen</b>". 699 */ 700 public static final Include INCLUDE_SPECIMEN = new Include("DiagnosticOrder:specimen"); 701 702 /** 703 * Constant for fluent queries to be used to add include statements. Specifies 704 * the path value of "<b>DiagnosticOrder:subject</b>". 705 */ 706 public static final Include INCLUDE_SUBJECT = new Include("DiagnosticOrder:subject"); 707 708 709 @Child(name="subject", order=0, min=1, max=1, summary=true, modifier=false, type={ 710 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Group.class, ca.uhn.fhir.model.dstu2.resource.Location.class, ca.uhn.fhir.model.dstu2.resource.Device.class }) 711 @Description( 712 shortDefinition="who.focus", 713 formalDefinition="Who or what the investigation is to be performed on. This is usually a human patient, but diagnostic tests can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans)" 714 ) 715 private ResourceReferenceDt mySubject; 716 717 @Child(name="orderer", order=1, min=0, max=1, summary=true, modifier=false, type={ 718 ca.uhn.fhir.model.dstu2.resource.Practitioner.class }) 719 @Description( 720 shortDefinition="who.actor", 721 formalDefinition="The practitioner that holds legal responsibility for ordering the investigation" 722 ) 723 private ResourceReferenceDt myOrderer; 724 725 @Child(name="identifier", type=IdentifierDt.class, order=2, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 726 @Description( 727 shortDefinition="id", 728 formalDefinition="Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller." 729 ) 730 private java.util.List<IdentifierDt> myIdentifier; 731 732 @Child(name="encounter", order=3, min=0, max=1, summary=true, modifier=false, type={ 733 ca.uhn.fhir.model.dstu2.resource.Encounter.class }) 734 @Description( 735 shortDefinition="context", 736 formalDefinition="An encounter that provides additional information about the healthcare context in which this request is made" 737 ) 738 private ResourceReferenceDt myEncounter; 739 740 @Child(name="reason", type=CodeableConceptDt.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 741 @Description( 742 shortDefinition="", 743 formalDefinition="An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation." 744 ) 745 private java.util.List<CodeableConceptDt> myReason; 746 747 @Child(name="supportingInformation", order=5, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 748 ca.uhn.fhir.model.dstu2.resource.Observation.class, ca.uhn.fhir.model.dstu2.resource.Condition.class, ca.uhn.fhir.model.dstu2.resource.DocumentReference.class }) 749 @Description( 750 shortDefinition="", 751 formalDefinition="Additional clinical information about the patient or specimen that may influence test interpretations. This includes observations explicitly requested by the producer(filler) to provide context or supporting information needed to complete the order." 752 ) 753 private java.util.List<ResourceReferenceDt> mySupportingInformation; 754 755 @Child(name="specimen", order=6, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 756 ca.uhn.fhir.model.dstu2.resource.Specimen.class }) 757 @Description( 758 shortDefinition="", 759 formalDefinition="One or more specimens that the diagnostic investigation is about" 760 ) 761 private java.util.List<ResourceReferenceDt> mySpecimen; 762 763 @Child(name="status", type=CodeDt.class, order=7, min=0, max=1, summary=true, modifier=true) 764 @Description( 765 shortDefinition="status", 766 formalDefinition="The status of the order" 767 ) 768 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/diagnostic-order-status") 769 private BoundCodeDt<DiagnosticOrderStatusEnum> myStatus; 770 771 @Child(name="priority", type=CodeDt.class, order=8, min=0, max=1, summary=true, modifier=false) 772 @Description( 773 shortDefinition="grade", 774 formalDefinition="The clinical priority associated with this order" 775 ) 776 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/diagnostic-order-priority") 777 private BoundCodeDt<DiagnosticOrderPriorityEnum> myPriority; 778 779 @Child(name="event", order=9, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 780 @Description( 781 shortDefinition="", 782 formalDefinition="A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed" 783 ) 784 private java.util.List<Event> myEvent; 785 786 @Child(name="item", order=10, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 787 @Description( 788 shortDefinition="", 789 formalDefinition="The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested" 790 ) 791 private java.util.List<Item> myItem; 792 793 @Child(name="note", type=AnnotationDt.class, order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 794 @Description( 795 shortDefinition="", 796 formalDefinition="Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\")" 797 ) 798 private java.util.List<AnnotationDt> myNote; 799 800 801 @Override 802 public boolean isEmpty() { 803 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySubject, myOrderer, myIdentifier, myEncounter, myReason, mySupportingInformation, mySpecimen, myStatus, myPriority, myEvent, myItem, myNote); 804 } 805 806 @Override 807 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 808 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySubject, myOrderer, myIdentifier, myEncounter, myReason, mySupportingInformation, mySpecimen, myStatus, myPriority, myEvent, myItem, myNote); 809 } 810 811 /** 812 * Gets the value(s) for <b>subject</b> (who.focus). 813 * creating it if it does 814 * not exist. Will not return <code>null</code>. 815 * 816 * <p> 817 * <b>Definition:</b> 818 * Who or what the investigation is to be performed on. This is usually a human patient, but diagnostic tests can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans) 819 * </p> 820 */ 821 public ResourceReferenceDt getSubject() { 822 if (mySubject == null) { 823 mySubject = new ResourceReferenceDt(); 824 } 825 return mySubject; 826 } 827 828 /** 829 * Sets the value(s) for <b>subject</b> (who.focus) 830 * 831 * <p> 832 * <b>Definition:</b> 833 * Who or what the investigation is to be performed on. This is usually a human patient, but diagnostic tests can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans) 834 * </p> 835 */ 836 public DiagnosticOrder setSubject(ResourceReferenceDt theValue) { 837 mySubject = theValue; 838 return this; 839 } 840 841 842 843 844 /** 845 * Gets the value(s) for <b>orderer</b> (who.actor). 846 * creating it if it does 847 * not exist. Will not return <code>null</code>. 848 * 849 * <p> 850 * <b>Definition:</b> 851 * The practitioner that holds legal responsibility for ordering the investigation 852 * </p> 853 */ 854 public ResourceReferenceDt getOrderer() { 855 if (myOrderer == null) { 856 myOrderer = new ResourceReferenceDt(); 857 } 858 return myOrderer; 859 } 860 861 /** 862 * Sets the value(s) for <b>orderer</b> (who.actor) 863 * 864 * <p> 865 * <b>Definition:</b> 866 * The practitioner that holds legal responsibility for ordering the investigation 867 * </p> 868 */ 869 public DiagnosticOrder setOrderer(ResourceReferenceDt theValue) { 870 myOrderer = theValue; 871 return this; 872 } 873 874 875 876 877 /** 878 * Gets the value(s) for <b>identifier</b> (id). 879 * creating it if it does 880 * not exist. Will not return <code>null</code>. 881 * 882 * <p> 883 * <b>Definition:</b> 884 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 885 * </p> 886 */ 887 public java.util.List<IdentifierDt> getIdentifier() { 888 if (myIdentifier == null) { 889 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 890 } 891 return myIdentifier; 892 } 893 894 /** 895 * Sets the value(s) for <b>identifier</b> (id) 896 * 897 * <p> 898 * <b>Definition:</b> 899 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 900 * </p> 901 */ 902 public DiagnosticOrder setIdentifier(java.util.List<IdentifierDt> theValue) { 903 myIdentifier = theValue; 904 return this; 905 } 906 907 908 909 /** 910 * Adds and returns a new value for <b>identifier</b> (id) 911 * 912 * <p> 913 * <b>Definition:</b> 914 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 915 * </p> 916 */ 917 public IdentifierDt addIdentifier() { 918 IdentifierDt newType = new IdentifierDt(); 919 getIdentifier().add(newType); 920 return newType; 921 } 922 923 /** 924 * Adds a given new value for <b>identifier</b> (id) 925 * 926 * <p> 927 * <b>Definition:</b> 928 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 929 * </p> 930 * @param theValue The identifier to add (must not be <code>null</code>) 931 */ 932 public DiagnosticOrder addIdentifier(IdentifierDt theValue) { 933 if (theValue == null) { 934 throw new NullPointerException("theValue must not be null"); 935 } 936 getIdentifier().add(theValue); 937 return this; 938 } 939 940 /** 941 * Gets the first repetition for <b>identifier</b> (id), 942 * creating it if it does not already exist. 943 * 944 * <p> 945 * <b>Definition:</b> 946 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 947 * </p> 948 */ 949 public IdentifierDt getIdentifierFirstRep() { 950 if (getIdentifier().isEmpty()) { 951 return addIdentifier(); 952 } 953 return getIdentifier().get(0); 954 } 955 956 /** 957 * Gets the value(s) for <b>encounter</b> (context). 958 * creating it if it does 959 * not exist. Will not return <code>null</code>. 960 * 961 * <p> 962 * <b>Definition:</b> 963 * An encounter that provides additional information about the healthcare context in which this request is made 964 * </p> 965 */ 966 public ResourceReferenceDt getEncounter() { 967 if (myEncounter == null) { 968 myEncounter = new ResourceReferenceDt(); 969 } 970 return myEncounter; 971 } 972 973 /** 974 * Sets the value(s) for <b>encounter</b> (context) 975 * 976 * <p> 977 * <b>Definition:</b> 978 * An encounter that provides additional information about the healthcare context in which this request is made 979 * </p> 980 */ 981 public DiagnosticOrder setEncounter(ResourceReferenceDt theValue) { 982 myEncounter = theValue; 983 return this; 984 } 985 986 987 988 989 /** 990 * Gets the value(s) for <b>reason</b> (). 991 * creating it if it does 992 * not exist. Will not return <code>null</code>. 993 * 994 * <p> 995 * <b>Definition:</b> 996 * An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation. 997 * </p> 998 */ 999 public java.util.List<CodeableConceptDt> getReason() { 1000 if (myReason == null) { 1001 myReason = new java.util.ArrayList<CodeableConceptDt>(); 1002 } 1003 return myReason; 1004 } 1005 1006 /** 1007 * Sets the value(s) for <b>reason</b> () 1008 * 1009 * <p> 1010 * <b>Definition:</b> 1011 * An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation. 1012 * </p> 1013 */ 1014 public DiagnosticOrder setReason(java.util.List<CodeableConceptDt> theValue) { 1015 myReason = theValue; 1016 return this; 1017 } 1018 1019 1020 1021 /** 1022 * Adds and returns a new value for <b>reason</b> () 1023 * 1024 * <p> 1025 * <b>Definition:</b> 1026 * An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation. 1027 * </p> 1028 */ 1029 public CodeableConceptDt addReason() { 1030 CodeableConceptDt newType = new CodeableConceptDt(); 1031 getReason().add(newType); 1032 return newType; 1033 } 1034 1035 /** 1036 * Adds a given new value for <b>reason</b> () 1037 * 1038 * <p> 1039 * <b>Definition:</b> 1040 * An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation. 1041 * </p> 1042 * @param theValue The reason to add (must not be <code>null</code>) 1043 */ 1044 public DiagnosticOrder addReason(CodeableConceptDt theValue) { 1045 if (theValue == null) { 1046 throw new NullPointerException("theValue must not be null"); 1047 } 1048 getReason().add(theValue); 1049 return this; 1050 } 1051 1052 /** 1053 * Gets the first repetition for <b>reason</b> (), 1054 * creating it if it does not already exist. 1055 * 1056 * <p> 1057 * <b>Definition:</b> 1058 * An explanation or justification for why this diagnostic investigation is being requested. This is often for billing purposes. May relate to the resources referred to in supportingInformation. 1059 * </p> 1060 */ 1061 public CodeableConceptDt getReasonFirstRep() { 1062 if (getReason().isEmpty()) { 1063 return addReason(); 1064 } 1065 return getReason().get(0); 1066 } 1067 1068 /** 1069 * Gets the value(s) for <b>supportingInformation</b> (). 1070 * creating it if it does 1071 * not exist. Will not return <code>null</code>. 1072 * 1073 * <p> 1074 * <b>Definition:</b> 1075 * Additional clinical information about the patient or specimen that may influence test interpretations. This includes observations explicitly requested by the producer(filler) to provide context or supporting information needed to complete the order. 1076 * </p> 1077 */ 1078 public java.util.List<ResourceReferenceDt> getSupportingInformation() { 1079 if (mySupportingInformation == null) { 1080 mySupportingInformation = new java.util.ArrayList<ResourceReferenceDt>(); 1081 } 1082 return mySupportingInformation; 1083 } 1084 1085 /** 1086 * Sets the value(s) for <b>supportingInformation</b> () 1087 * 1088 * <p> 1089 * <b>Definition:</b> 1090 * Additional clinical information about the patient or specimen that may influence test interpretations. This includes observations explicitly requested by the producer(filler) to provide context or supporting information needed to complete the order. 1091 * </p> 1092 */ 1093 public DiagnosticOrder setSupportingInformation(java.util.List<ResourceReferenceDt> theValue) { 1094 mySupportingInformation = theValue; 1095 return this; 1096 } 1097 1098 1099 1100 /** 1101 * Adds and returns a new value for <b>supportingInformation</b> () 1102 * 1103 * <p> 1104 * <b>Definition:</b> 1105 * Additional clinical information about the patient or specimen that may influence test interpretations. This includes observations explicitly requested by the producer(filler) to provide context or supporting information needed to complete the order. 1106 * </p> 1107 */ 1108 public ResourceReferenceDt addSupportingInformation() { 1109 ResourceReferenceDt newType = new ResourceReferenceDt(); 1110 getSupportingInformation().add(newType); 1111 return newType; 1112 } 1113 1114 /** 1115 * Gets the value(s) for <b>specimen</b> (). 1116 * creating it if it does 1117 * not exist. Will not return <code>null</code>. 1118 * 1119 * <p> 1120 * <b>Definition:</b> 1121 * One or more specimens that the diagnostic investigation is about 1122 * </p> 1123 */ 1124 public java.util.List<ResourceReferenceDt> getSpecimen() { 1125 if (mySpecimen == null) { 1126 mySpecimen = new java.util.ArrayList<ResourceReferenceDt>(); 1127 } 1128 return mySpecimen; 1129 } 1130 1131 /** 1132 * Sets the value(s) for <b>specimen</b> () 1133 * 1134 * <p> 1135 * <b>Definition:</b> 1136 * One or more specimens that the diagnostic investigation is about 1137 * </p> 1138 */ 1139 public DiagnosticOrder setSpecimen(java.util.List<ResourceReferenceDt> theValue) { 1140 mySpecimen = theValue; 1141 return this; 1142 } 1143 1144 1145 1146 /** 1147 * Adds and returns a new value for <b>specimen</b> () 1148 * 1149 * <p> 1150 * <b>Definition:</b> 1151 * One or more specimens that the diagnostic investigation is about 1152 * </p> 1153 */ 1154 public ResourceReferenceDt addSpecimen() { 1155 ResourceReferenceDt newType = new ResourceReferenceDt(); 1156 getSpecimen().add(newType); 1157 return newType; 1158 } 1159 1160 /** 1161 * Gets the value(s) for <b>status</b> (status). 1162 * creating it if it does 1163 * not exist. Will not return <code>null</code>. 1164 * 1165 * <p> 1166 * <b>Definition:</b> 1167 * The status of the order 1168 * </p> 1169 */ 1170 public BoundCodeDt<DiagnosticOrderStatusEnum> getStatusElement() { 1171 if (myStatus == null) { 1172 myStatus = new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER); 1173 } 1174 return myStatus; 1175 } 1176 1177 1178 /** 1179 * Gets the value(s) for <b>status</b> (status). 1180 * creating it if it does 1181 * not exist. This method may return <code>null</code>. 1182 * 1183 * <p> 1184 * <b>Definition:</b> 1185 * The status of the order 1186 * </p> 1187 */ 1188 public String getStatus() { 1189 return getStatusElement().getValue(); 1190 } 1191 1192 /** 1193 * Sets the value(s) for <b>status</b> (status) 1194 * 1195 * <p> 1196 * <b>Definition:</b> 1197 * The status of the order 1198 * </p> 1199 */ 1200 public DiagnosticOrder setStatus(BoundCodeDt<DiagnosticOrderStatusEnum> theValue) { 1201 myStatus = theValue; 1202 return this; 1203 } 1204 1205 1206 1207 /** 1208 * Sets the value(s) for <b>status</b> (status) 1209 * 1210 * <p> 1211 * <b>Definition:</b> 1212 * The status of the order 1213 * </p> 1214 */ 1215 public DiagnosticOrder setStatus(DiagnosticOrderStatusEnum theValue) { 1216 setStatus(new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER, theValue)); 1217 1218/* 1219 getStatusElement().setValueAsEnum(theValue); 1220*/ 1221 return this; 1222 } 1223 1224 1225 /** 1226 * Gets the value(s) for <b>priority</b> (grade). 1227 * creating it if it does 1228 * not exist. Will not return <code>null</code>. 1229 * 1230 * <p> 1231 * <b>Definition:</b> 1232 * The clinical priority associated with this order 1233 * </p> 1234 */ 1235 public BoundCodeDt<DiagnosticOrderPriorityEnum> getPriorityElement() { 1236 if (myPriority == null) { 1237 myPriority = new BoundCodeDt<DiagnosticOrderPriorityEnum>(DiagnosticOrderPriorityEnum.VALUESET_BINDER); 1238 } 1239 return myPriority; 1240 } 1241 1242 1243 /** 1244 * Gets the value(s) for <b>priority</b> (grade). 1245 * creating it if it does 1246 * not exist. This method may return <code>null</code>. 1247 * 1248 * <p> 1249 * <b>Definition:</b> 1250 * The clinical priority associated with this order 1251 * </p> 1252 */ 1253 public String getPriority() { 1254 return getPriorityElement().getValue(); 1255 } 1256 1257 /** 1258 * Sets the value(s) for <b>priority</b> (grade) 1259 * 1260 * <p> 1261 * <b>Definition:</b> 1262 * The clinical priority associated with this order 1263 * </p> 1264 */ 1265 public DiagnosticOrder setPriority(BoundCodeDt<DiagnosticOrderPriorityEnum> theValue) { 1266 myPriority = theValue; 1267 return this; 1268 } 1269 1270 1271 1272 /** 1273 * Sets the value(s) for <b>priority</b> (grade) 1274 * 1275 * <p> 1276 * <b>Definition:</b> 1277 * The clinical priority associated with this order 1278 * </p> 1279 */ 1280 public DiagnosticOrder setPriority(DiagnosticOrderPriorityEnum theValue) { 1281 setPriority(new BoundCodeDt<DiagnosticOrderPriorityEnum>(DiagnosticOrderPriorityEnum.VALUESET_BINDER, theValue)); 1282 1283/* 1284 getPriorityElement().setValueAsEnum(theValue); 1285*/ 1286 return this; 1287 } 1288 1289 1290 /** 1291 * Gets the value(s) for <b>event</b> (). 1292 * creating it if it does 1293 * not exist. Will not return <code>null</code>. 1294 * 1295 * <p> 1296 * <b>Definition:</b> 1297 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1298 * </p> 1299 */ 1300 public java.util.List<Event> getEvent() { 1301 if (myEvent == null) { 1302 myEvent = new java.util.ArrayList<Event>(); 1303 } 1304 return myEvent; 1305 } 1306 1307 /** 1308 * Sets the value(s) for <b>event</b> () 1309 * 1310 * <p> 1311 * <b>Definition:</b> 1312 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1313 * </p> 1314 */ 1315 public DiagnosticOrder setEvent(java.util.List<Event> theValue) { 1316 myEvent = theValue; 1317 return this; 1318 } 1319 1320 1321 1322 /** 1323 * Adds and returns a new value for <b>event</b> () 1324 * 1325 * <p> 1326 * <b>Definition:</b> 1327 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1328 * </p> 1329 */ 1330 public Event addEvent() { 1331 Event newType = new Event(); 1332 getEvent().add(newType); 1333 return newType; 1334 } 1335 1336 /** 1337 * Adds a given new value for <b>event</b> () 1338 * 1339 * <p> 1340 * <b>Definition:</b> 1341 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1342 * </p> 1343 * @param theValue The event to add (must not be <code>null</code>) 1344 */ 1345 public DiagnosticOrder addEvent(Event theValue) { 1346 if (theValue == null) { 1347 throw new NullPointerException("theValue must not be null"); 1348 } 1349 getEvent().add(theValue); 1350 return this; 1351 } 1352 1353 /** 1354 * Gets the first repetition for <b>event</b> (), 1355 * creating it if it does not already exist. 1356 * 1357 * <p> 1358 * <b>Definition:</b> 1359 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1360 * </p> 1361 */ 1362 public Event getEventFirstRep() { 1363 if (getEvent().isEmpty()) { 1364 return addEvent(); 1365 } 1366 return getEvent().get(0); 1367 } 1368 1369 /** 1370 * Gets the value(s) for <b>item</b> (). 1371 * creating it if it does 1372 * not exist. Will not return <code>null</code>. 1373 * 1374 * <p> 1375 * <b>Definition:</b> 1376 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1377 * </p> 1378 */ 1379 public java.util.List<Item> getItem() { 1380 if (myItem == null) { 1381 myItem = new java.util.ArrayList<Item>(); 1382 } 1383 return myItem; 1384 } 1385 1386 /** 1387 * Sets the value(s) for <b>item</b> () 1388 * 1389 * <p> 1390 * <b>Definition:</b> 1391 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1392 * </p> 1393 */ 1394 public DiagnosticOrder setItem(java.util.List<Item> theValue) { 1395 myItem = theValue; 1396 return this; 1397 } 1398 1399 1400 1401 /** 1402 * Adds and returns a new value for <b>item</b> () 1403 * 1404 * <p> 1405 * <b>Definition:</b> 1406 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1407 * </p> 1408 */ 1409 public Item addItem() { 1410 Item newType = new Item(); 1411 getItem().add(newType); 1412 return newType; 1413 } 1414 1415 /** 1416 * Adds a given new value for <b>item</b> () 1417 * 1418 * <p> 1419 * <b>Definition:</b> 1420 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1421 * </p> 1422 * @param theValue The item to add (must not be <code>null</code>) 1423 */ 1424 public DiagnosticOrder addItem(Item theValue) { 1425 if (theValue == null) { 1426 throw new NullPointerException("theValue must not be null"); 1427 } 1428 getItem().add(theValue); 1429 return this; 1430 } 1431 1432 /** 1433 * Gets the first repetition for <b>item</b> (), 1434 * creating it if it does not already exist. 1435 * 1436 * <p> 1437 * <b>Definition:</b> 1438 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1439 * </p> 1440 */ 1441 public Item getItemFirstRep() { 1442 if (getItem().isEmpty()) { 1443 return addItem(); 1444 } 1445 return getItem().get(0); 1446 } 1447 1448 /** 1449 * Gets the value(s) for <b>note</b> (). 1450 * creating it if it does 1451 * not exist. Will not return <code>null</code>. 1452 * 1453 * <p> 1454 * <b>Definition:</b> 1455 * Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\") 1456 * </p> 1457 */ 1458 public java.util.List<AnnotationDt> getNote() { 1459 if (myNote == null) { 1460 myNote = new java.util.ArrayList<AnnotationDt>(); 1461 } 1462 return myNote; 1463 } 1464 1465 /** 1466 * Sets the value(s) for <b>note</b> () 1467 * 1468 * <p> 1469 * <b>Definition:</b> 1470 * Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\") 1471 * </p> 1472 */ 1473 public DiagnosticOrder setNote(java.util.List<AnnotationDt> theValue) { 1474 myNote = theValue; 1475 return this; 1476 } 1477 1478 1479 1480 /** 1481 * Adds and returns a new value for <b>note</b> () 1482 * 1483 * <p> 1484 * <b>Definition:</b> 1485 * Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\") 1486 * </p> 1487 */ 1488 public AnnotationDt addNote() { 1489 AnnotationDt newType = new AnnotationDt(); 1490 getNote().add(newType); 1491 return newType; 1492 } 1493 1494 /** 1495 * Adds a given new value for <b>note</b> () 1496 * 1497 * <p> 1498 * <b>Definition:</b> 1499 * Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\") 1500 * </p> 1501 * @param theValue The note to add (must not be <code>null</code>) 1502 */ 1503 public DiagnosticOrder addNote(AnnotationDt theValue) { 1504 if (theValue == null) { 1505 throw new NullPointerException("theValue must not be null"); 1506 } 1507 getNote().add(theValue); 1508 return this; 1509 } 1510 1511 /** 1512 * Gets the first repetition for <b>note</b> (), 1513 * creating it if it does not already exist. 1514 * 1515 * <p> 1516 * <b>Definition:</b> 1517 * Any other notes associated with this patient, specimen or order (e.g. \"patient hates needles\") 1518 * </p> 1519 */ 1520 public AnnotationDt getNoteFirstRep() { 1521 if (getNote().isEmpty()) { 1522 return addNote(); 1523 } 1524 return getNote().get(0); 1525 } 1526 1527 /** 1528 * Block class for child element: <b>DiagnosticOrder.event</b> () 1529 * 1530 * <p> 1531 * <b>Definition:</b> 1532 * A summary of the events of interest that have occurred as the request is processed; e.g. when the order was made, various processing steps (specimens received), when it was completed 1533 * </p> 1534 */ 1535 @Block() 1536 public static class Event 1537 extends BaseIdentifiableElement implements IResourceBlock { 1538 1539 @Child(name="status", type=CodeDt.class, order=0, min=1, max=1, summary=true, modifier=false) 1540 @Description( 1541 shortDefinition="", 1542 formalDefinition="The status for the event" 1543 ) 1544 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/diagnostic-order-status") 1545 private BoundCodeDt<DiagnosticOrderStatusEnum> myStatus; 1546 1547 @Child(name="description", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=true, modifier=false) 1548 @Description( 1549 shortDefinition="", 1550 formalDefinition="Additional information about the event that occurred - e.g. if the status remained unchanged" 1551 ) 1552 private CodeableConceptDt myDescription; 1553 1554 @Child(name="dateTime", type=DateTimeDt.class, order=2, min=1, max=1, summary=true, modifier=false) 1555 @Description( 1556 shortDefinition="", 1557 formalDefinition="The date/time at which the event occurred" 1558 ) 1559 private DateTimeDt myDateTime; 1560 1561 @Child(name="actor", order=3, min=0, max=1, summary=false, modifier=false, type={ 1562 ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.Device.class }) 1563 @Description( 1564 shortDefinition="", 1565 formalDefinition="The person responsible for performing or recording the action" 1566 ) 1567 private ResourceReferenceDt myActor; 1568 1569 1570 @Override 1571 public boolean isEmpty() { 1572 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myStatus, myDescription, myDateTime, myActor); 1573 } 1574 1575 @Override 1576 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1577 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myStatus, myDescription, myDateTime, myActor); 1578 } 1579 1580 /** 1581 * Gets the value(s) for <b>status</b> (). 1582 * creating it if it does 1583 * not exist. Will not return <code>null</code>. 1584 * 1585 * <p> 1586 * <b>Definition:</b> 1587 * The status for the event 1588 * </p> 1589 */ 1590 public BoundCodeDt<DiagnosticOrderStatusEnum> getStatusElement() { 1591 if (myStatus == null) { 1592 myStatus = new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER); 1593 } 1594 return myStatus; 1595 } 1596 1597 1598 /** 1599 * Gets the value(s) for <b>status</b> (). 1600 * creating it if it does 1601 * not exist. This method may return <code>null</code>. 1602 * 1603 * <p> 1604 * <b>Definition:</b> 1605 * The status for the event 1606 * </p> 1607 */ 1608 public String getStatus() { 1609 return getStatusElement().getValue(); 1610 } 1611 1612 /** 1613 * Sets the value(s) for <b>status</b> () 1614 * 1615 * <p> 1616 * <b>Definition:</b> 1617 * The status for the event 1618 * </p> 1619 */ 1620 public Event setStatus(BoundCodeDt<DiagnosticOrderStatusEnum> theValue) { 1621 myStatus = theValue; 1622 return this; 1623 } 1624 1625 1626 1627 /** 1628 * Sets the value(s) for <b>status</b> () 1629 * 1630 * <p> 1631 * <b>Definition:</b> 1632 * The status for the event 1633 * </p> 1634 */ 1635 public Event setStatus(DiagnosticOrderStatusEnum theValue) { 1636 setStatus(new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER, theValue)); 1637 1638/* 1639 getStatusElement().setValueAsEnum(theValue); 1640*/ 1641 return this; 1642 } 1643 1644 1645 /** 1646 * Gets the value(s) for <b>description</b> (). 1647 * creating it if it does 1648 * not exist. Will not return <code>null</code>. 1649 * 1650 * <p> 1651 * <b>Definition:</b> 1652 * Additional information about the event that occurred - e.g. if the status remained unchanged 1653 * </p> 1654 */ 1655 public CodeableConceptDt getDescription() { 1656 if (myDescription == null) { 1657 myDescription = new CodeableConceptDt(); 1658 } 1659 return myDescription; 1660 } 1661 1662 /** 1663 * Sets the value(s) for <b>description</b> () 1664 * 1665 * <p> 1666 * <b>Definition:</b> 1667 * Additional information about the event that occurred - e.g. if the status remained unchanged 1668 * </p> 1669 */ 1670 public Event setDescription(CodeableConceptDt theValue) { 1671 myDescription = theValue; 1672 return this; 1673 } 1674 1675 1676 1677 1678 /** 1679 * Gets the value(s) for <b>dateTime</b> (). 1680 * creating it if it does 1681 * not exist. Will not return <code>null</code>. 1682 * 1683 * <p> 1684 * <b>Definition:</b> 1685 * The date/time at which the event occurred 1686 * </p> 1687 */ 1688 public DateTimeDt getDateTimeElement() { 1689 if (myDateTime == null) { 1690 myDateTime = new DateTimeDt(); 1691 } 1692 return myDateTime; 1693 } 1694 1695 1696 /** 1697 * Gets the value(s) for <b>dateTime</b> (). 1698 * creating it if it does 1699 * not exist. This method may return <code>null</code>. 1700 * 1701 * <p> 1702 * <b>Definition:</b> 1703 * The date/time at which the event occurred 1704 * </p> 1705 */ 1706 public Date getDateTime() { 1707 return getDateTimeElement().getValue(); 1708 } 1709 1710 /** 1711 * Sets the value(s) for <b>dateTime</b> () 1712 * 1713 * <p> 1714 * <b>Definition:</b> 1715 * The date/time at which the event occurred 1716 * </p> 1717 */ 1718 public Event setDateTime(DateTimeDt theValue) { 1719 myDateTime = theValue; 1720 return this; 1721 } 1722 1723 1724 1725 /** 1726 * Sets the value for <b>dateTime</b> () 1727 * 1728 * <p> 1729 * <b>Definition:</b> 1730 * The date/time at which the event occurred 1731 * </p> 1732 */ 1733 public Event setDateTime( Date theDate, TemporalPrecisionEnum thePrecision) { 1734 myDateTime = new DateTimeDt(theDate, thePrecision); 1735 return this; 1736 } 1737 1738 /** 1739 * Sets the value for <b>dateTime</b> () 1740 * 1741 * <p> 1742 * <b>Definition:</b> 1743 * The date/time at which the event occurred 1744 * </p> 1745 */ 1746 public Event setDateTimeWithSecondsPrecision( Date theDate) { 1747 myDateTime = new DateTimeDt(theDate); 1748 return this; 1749 } 1750 1751 1752 /** 1753 * Gets the value(s) for <b>actor</b> (). 1754 * creating it if it does 1755 * not exist. Will not return <code>null</code>. 1756 * 1757 * <p> 1758 * <b>Definition:</b> 1759 * The person responsible for performing or recording the action 1760 * </p> 1761 */ 1762 public ResourceReferenceDt getActor() { 1763 if (myActor == null) { 1764 myActor = new ResourceReferenceDt(); 1765 } 1766 return myActor; 1767 } 1768 1769 /** 1770 * Sets the value(s) for <b>actor</b> () 1771 * 1772 * <p> 1773 * <b>Definition:</b> 1774 * The person responsible for performing or recording the action 1775 * </p> 1776 */ 1777 public Event setActor(ResourceReferenceDt theValue) { 1778 myActor = theValue; 1779 return this; 1780 } 1781 1782 1783 1784 1785 1786 1787 } 1788 1789 1790 /** 1791 * Block class for child element: <b>DiagnosticOrder.item</b> () 1792 * 1793 * <p> 1794 * <b>Definition:</b> 1795 * The specific diagnostic investigations that are requested as part of this request. Sometimes, there can only be one item per request, but in most contexts, more than one investigation can be requested 1796 * </p> 1797 */ 1798 @Block() 1799 public static class Item 1800 extends BaseIdentifiableElement implements IResourceBlock { 1801 1802 @Child(name="code", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=true, modifier=false) 1803 @Description( 1804 shortDefinition="", 1805 formalDefinition="A code that identifies a particular diagnostic investigation, or panel of investigations, that have been requested" 1806 ) 1807 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-diagnostic-requests") 1808 private CodeableConceptDt myCode; 1809 1810 @Child(name="specimen", order=1, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 1811 ca.uhn.fhir.model.dstu2.resource.Specimen.class }) 1812 @Description( 1813 shortDefinition="", 1814 formalDefinition="If the item is related to a specific specimen" 1815 ) 1816 private java.util.List<ResourceReferenceDt> mySpecimen; 1817 1818 @Child(name="bodySite", type=CodeableConceptDt.class, order=2, min=0, max=1, summary=false, modifier=false) 1819 @Description( 1820 shortDefinition="", 1821 formalDefinition="Anatomical location where the request test should be performed. This is the target site." 1822 ) 1823 private CodeableConceptDt myBodySite; 1824 1825 @Child(name="status", type=CodeDt.class, order=3, min=0, max=1, summary=true, modifier=false) 1826 @Description( 1827 shortDefinition="", 1828 formalDefinition="The status of this individual item within the order" 1829 ) 1830 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/diagnostic-order-status") 1831 private BoundCodeDt<DiagnosticOrderStatusEnum> myStatus; 1832 1833 @Child(name="event", type=Event.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 1834 @Description( 1835 shortDefinition="", 1836 formalDefinition="A summary of the events of interest that have occurred as this item of the request is processed" 1837 ) 1838 private java.util.List<Event> myEvent; 1839 1840 1841 @Override 1842 public boolean isEmpty() { 1843 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, mySpecimen, myBodySite, myStatus, myEvent); 1844 } 1845 1846 @Override 1847 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1848 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, mySpecimen, myBodySite, myStatus, myEvent); 1849 } 1850 1851 /** 1852 * Gets the value(s) for <b>code</b> (). 1853 * creating it if it does 1854 * not exist. Will not return <code>null</code>. 1855 * 1856 * <p> 1857 * <b>Definition:</b> 1858 * A code that identifies a particular diagnostic investigation, or panel of investigations, that have been requested 1859 * </p> 1860 */ 1861 public CodeableConceptDt getCode() { 1862 if (myCode == null) { 1863 myCode = new CodeableConceptDt(); 1864 } 1865 return myCode; 1866 } 1867 1868 /** 1869 * Sets the value(s) for <b>code</b> () 1870 * 1871 * <p> 1872 * <b>Definition:</b> 1873 * A code that identifies a particular diagnostic investigation, or panel of investigations, that have been requested 1874 * </p> 1875 */ 1876 public Item setCode(CodeableConceptDt theValue) { 1877 myCode = theValue; 1878 return this; 1879 } 1880 1881 1882 1883 1884 /** 1885 * Gets the value(s) for <b>specimen</b> (). 1886 * creating it if it does 1887 * not exist. Will not return <code>null</code>. 1888 * 1889 * <p> 1890 * <b>Definition:</b> 1891 * If the item is related to a specific specimen 1892 * </p> 1893 */ 1894 public java.util.List<ResourceReferenceDt> getSpecimen() { 1895 if (mySpecimen == null) { 1896 mySpecimen = new java.util.ArrayList<ResourceReferenceDt>(); 1897 } 1898 return mySpecimen; 1899 } 1900 1901 /** 1902 * Sets the value(s) for <b>specimen</b> () 1903 * 1904 * <p> 1905 * <b>Definition:</b> 1906 * If the item is related to a specific specimen 1907 * </p> 1908 */ 1909 public Item setSpecimen(java.util.List<ResourceReferenceDt> theValue) { 1910 mySpecimen = theValue; 1911 return this; 1912 } 1913 1914 1915 1916 /** 1917 * Adds and returns a new value for <b>specimen</b> () 1918 * 1919 * <p> 1920 * <b>Definition:</b> 1921 * If the item is related to a specific specimen 1922 * </p> 1923 */ 1924 public ResourceReferenceDt addSpecimen() { 1925 ResourceReferenceDt newType = new ResourceReferenceDt(); 1926 getSpecimen().add(newType); 1927 return newType; 1928 } 1929 1930 /** 1931 * Gets the value(s) for <b>bodySite</b> (). 1932 * creating it if it does 1933 * not exist. Will not return <code>null</code>. 1934 * 1935 * <p> 1936 * <b>Definition:</b> 1937 * Anatomical location where the request test should be performed. This is the target site. 1938 * </p> 1939 */ 1940 public CodeableConceptDt getBodySite() { 1941 if (myBodySite == null) { 1942 myBodySite = new CodeableConceptDt(); 1943 } 1944 return myBodySite; 1945 } 1946 1947 /** 1948 * Sets the value(s) for <b>bodySite</b> () 1949 * 1950 * <p> 1951 * <b>Definition:</b> 1952 * Anatomical location where the request test should be performed. This is the target site. 1953 * </p> 1954 */ 1955 public Item setBodySite(CodeableConceptDt theValue) { 1956 myBodySite = theValue; 1957 return this; 1958 } 1959 1960 1961 1962 1963 /** 1964 * Gets the value(s) for <b>status</b> (). 1965 * creating it if it does 1966 * not exist. Will not return <code>null</code>. 1967 * 1968 * <p> 1969 * <b>Definition:</b> 1970 * The status of this individual item within the order 1971 * </p> 1972 */ 1973 public BoundCodeDt<DiagnosticOrderStatusEnum> getStatusElement() { 1974 if (myStatus == null) { 1975 myStatus = new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER); 1976 } 1977 return myStatus; 1978 } 1979 1980 1981 /** 1982 * Gets the value(s) for <b>status</b> (). 1983 * creating it if it does 1984 * not exist. This method may return <code>null</code>. 1985 * 1986 * <p> 1987 * <b>Definition:</b> 1988 * The status of this individual item within the order 1989 * </p> 1990 */ 1991 public String getStatus() { 1992 return getStatusElement().getValue(); 1993 } 1994 1995 /** 1996 * Sets the value(s) for <b>status</b> () 1997 * 1998 * <p> 1999 * <b>Definition:</b> 2000 * The status of this individual item within the order 2001 * </p> 2002 */ 2003 public Item setStatus(BoundCodeDt<DiagnosticOrderStatusEnum> theValue) { 2004 myStatus = theValue; 2005 return this; 2006 } 2007 2008 2009 2010 /** 2011 * Sets the value(s) for <b>status</b> () 2012 * 2013 * <p> 2014 * <b>Definition:</b> 2015 * The status of this individual item within the order 2016 * </p> 2017 */ 2018 public Item setStatus(DiagnosticOrderStatusEnum theValue) { 2019 setStatus(new BoundCodeDt<DiagnosticOrderStatusEnum>(DiagnosticOrderStatusEnum.VALUESET_BINDER, theValue)); 2020 2021/* 2022 getStatusElement().setValueAsEnum(theValue); 2023*/ 2024 return this; 2025 } 2026 2027 2028 /** 2029 * Gets the value(s) for <b>event</b> (). 2030 * creating it if it does 2031 * not exist. Will not return <code>null</code>. 2032 * 2033 * <p> 2034 * <b>Definition:</b> 2035 * A summary of the events of interest that have occurred as this item of the request is processed 2036 * </p> 2037 */ 2038 public java.util.List<Event> getEvent() { 2039 if (myEvent == null) { 2040 myEvent = new java.util.ArrayList<Event>(); 2041 } 2042 return myEvent; 2043 } 2044 2045 /** 2046 * Sets the value(s) for <b>event</b> () 2047 * 2048 * <p> 2049 * <b>Definition:</b> 2050 * A summary of the events of interest that have occurred as this item of the request is processed 2051 * </p> 2052 */ 2053 public Item setEvent(java.util.List<Event> theValue) { 2054 myEvent = theValue; 2055 return this; 2056 } 2057 2058 2059 2060 /** 2061 * Adds and returns a new value for <b>event</b> () 2062 * 2063 * <p> 2064 * <b>Definition:</b> 2065 * A summary of the events of interest that have occurred as this item of the request is processed 2066 * </p> 2067 */ 2068 public Event addEvent() { 2069 Event newType = new Event(); 2070 getEvent().add(newType); 2071 return newType; 2072 } 2073 2074 /** 2075 * Adds a given new value for <b>event</b> () 2076 * 2077 * <p> 2078 * <b>Definition:</b> 2079 * A summary of the events of interest that have occurred as this item of the request is processed 2080 * </p> 2081 * @param theValue The event to add (must not be <code>null</code>) 2082 */ 2083 public Item addEvent(Event theValue) { 2084 if (theValue == null) { 2085 throw new NullPointerException("theValue must not be null"); 2086 } 2087 getEvent().add(theValue); 2088 return this; 2089 } 2090 2091 /** 2092 * Gets the first repetition for <b>event</b> (), 2093 * creating it if it does not already exist. 2094 * 2095 * <p> 2096 * <b>Definition:</b> 2097 * A summary of the events of interest that have occurred as this item of the request is processed 2098 * </p> 2099 */ 2100 public Event getEventFirstRep() { 2101 if (getEvent().isEmpty()) { 2102 return addEvent(); 2103 } 2104 return getEvent().get(0); 2105 } 2106 2107 2108 2109 } 2110 2111 2112 2113 2114 @Override 2115 public String getResourceName() { 2116 return "DiagnosticOrder"; 2117 } 2118 2119 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2120 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2121 } 2122 2123 2124}