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