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>DeviceUseStatement</b> Resource 282 * (workflow.order) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. 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/DeviceUseStatement">http://hl7.org/fhir/profiles/DeviceUseStatement</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="DeviceUseStatement", profile="http://hl7.org/fhir/profiles/DeviceUseStatement", id="deviceusestatement") 301public class DeviceUseStatement extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource 303 { 304 305 /** 306 * Search parameter constant for <b>subject</b> 307 * <p> 308 * Description: <b>Search by subject</b><br> 309 * Type: <b>reference</b><br> 310 * Path: <b>DeviceUseStatement.subject</b><br> 311 * </p> 312 */ 313 @SearchParamDefinition(name="subject", path="DeviceUseStatement.subject", description="Search by subject", type="reference" 314, providesMembershipIn={ 315 @Compartment(name="Patient") } 316 ) 317 public static final String SP_SUBJECT = "subject"; 318 319 /** 320 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 321 * <p> 322 * Description: <b>Search by subject</b><br> 323 * Type: <b>reference</b><br> 324 * Path: <b>DeviceUseStatement.subject</b><br> 325 * </p> 326 */ 327 public static final ReferenceClientParam SUBJECT = new ReferenceClientParam(SP_SUBJECT); 328 329 /** 330 * Search parameter constant for <b>patient</b> 331 * <p> 332 * Description: <b>Search by subject - a patient</b><br> 333 * Type: <b>reference</b><br> 334 * Path: <b>DeviceUseStatement.subject</b><br> 335 * </p> 336 */ 337 @SearchParamDefinition(name="patient", path="DeviceUseStatement.subject", description="Search by subject - a patient", type="reference" 338 ) 339 public static final String SP_PATIENT = "patient"; 340 341 /** 342 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 343 * <p> 344 * Description: <b>Search by subject - a patient</b><br> 345 * Type: <b>reference</b><br> 346 * Path: <b>DeviceUseStatement.subject</b><br> 347 * </p> 348 */ 349 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 350 351 /** 352 * Search parameter constant for <b>device</b> 353 * <p> 354 * Description: <b>Search by device</b><br> 355 * Type: <b>reference</b><br> 356 * Path: <b>DeviceUseStatement.device</b><br> 357 * </p> 358 */ 359 @SearchParamDefinition(name="device", path="DeviceUseStatement.device", description="Search by device", type="reference" 360, providesMembershipIn={ 361 @Compartment(name="Encounter") } 362 ) 363 public static final String SP_DEVICE = "device"; 364 365 /** 366 * <b>Fluent Client</b> search parameter constant for <b>device</b> 367 * <p> 368 * Description: <b>Search by device</b><br> 369 * Type: <b>reference</b><br> 370 * Path: <b>DeviceUseStatement.device</b><br> 371 * </p> 372 */ 373 public static final ReferenceClientParam DEVICE = new ReferenceClientParam(SP_DEVICE); 374 375 376 /** 377 * Constant for fluent queries to be used to add include statements. Specifies 378 * the path value of "<b>DeviceUseStatement:device</b>". 379 */ 380 public static final Include INCLUDE_DEVICE = new Include("DeviceUseStatement:device"); 381 382 /** 383 * Constant for fluent queries to be used to add include statements. Specifies 384 * the path value of "<b>DeviceUseStatement:patient</b>". 385 */ 386 public static final Include INCLUDE_PATIENT = new Include("DeviceUseStatement:patient"); 387 388 /** 389 * Constant for fluent queries to be used to add include statements. Specifies 390 * the path value of "<b>DeviceUseStatement:subject</b>". 391 */ 392 public static final Include INCLUDE_SUBJECT = new Include("DeviceUseStatement:subject"); 393 394 395 @Child(name="bodySite", order=0, min=0, max=1, summary=false, modifier=false, type={ 396 CodeableConceptDt.class, 397 BodySite.class 398 }) 399 @Description( 400 shortDefinition="", 401 formalDefinition="Indicates the site on the subject's body where the device was used ( i.e. the target site)." 402 ) 403 private IDatatype myBodySite; 404 405 @Child(name="whenUsed", type=PeriodDt.class, order=1, min=0, max=1, summary=false, modifier=false) 406 @Description( 407 shortDefinition="when.done", 408 formalDefinition="The time period over which the device was used." 409 ) 410 private PeriodDt myWhenUsed; 411 412 @Child(name="device", order=2, min=1, max=1, summary=false, modifier=false, type={ 413 ca.uhn.fhir.model.dstu2.resource.Device.class 414 }) 415 @Description( 416 shortDefinition="who.actor", 417 formalDefinition="The details of the device used." 418 ) 419 private ResourceReferenceDt myDevice; 420 421 @Child(name="identifier", type=IdentifierDt.class, order=3, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 422 @Description( 423 shortDefinition="id", 424 formalDefinition="An external identifier for this statement such as an IRI." 425 ) 426 private java.util.List<IdentifierDt> myIdentifier; 427 428 @Child(name="indication", type=CodeableConceptDt.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 429 @Description( 430 shortDefinition="why", 431 formalDefinition="Reason or justification for the use of the device." 432 ) 433 private java.util.List<CodeableConceptDt> myIndication; 434 435 @Child(name="notes", type=StringDt.class, order=5, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 436 @Description( 437 shortDefinition="", 438 formalDefinition="Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement." 439 ) 440 private java.util.List<StringDt> myNotes; 441 442 @Child(name="recordedOn", type=DateTimeDt.class, order=6, min=0, max=1, summary=false, modifier=false) 443 @Description( 444 shortDefinition="when.recorded", 445 formalDefinition="The time at which the statement was made/recorded." 446 ) 447 private DateTimeDt myRecordedOn; 448 449 @Child(name="subject", order=7, min=1, max=1, summary=false, modifier=false, type={ 450 ca.uhn.fhir.model.dstu2.resource.Patient.class 451 }) 452 @Description( 453 shortDefinition="who.focus", 454 formalDefinition="The patient who used the device." 455 ) 456 private ResourceReferenceDt mySubject; 457 458 @Child(name="timing", order=8, min=0, max=1, summary=false, modifier=false, type={ 459 TimingDt.class, 460 PeriodDt.class, 461 DateTimeDt.class 462 }) 463 @Description( 464 shortDefinition="when.done", 465 formalDefinition="How often the device was used." 466 ) 467 private IDatatype myTiming; 468 469 470 @Override 471 public boolean isEmpty() { 472 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myBodySite, myWhenUsed, myDevice, myIdentifier, myIndication, myNotes, myRecordedOn, mySubject, myTiming); 473 } 474 475 @Override 476 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 477 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myBodySite, myWhenUsed, myDevice, myIdentifier, myIndication, myNotes, myRecordedOn, mySubject, myTiming); 478 } 479 480 /** 481 * Gets the value(s) for <b>bodySite[x]</b> (). 482 * creating it if it does 483 * not exist. Will not return <code>null</code>. 484 * 485 * <p> 486 * <b>Definition:</b> 487 * Indicates the site on the subject's body where the device was used ( i.e. the target site). 488 * </p> 489 */ 490 public IDatatype getBodySite() { 491 return myBodySite; 492 } 493 494 /** 495 * Sets the value(s) for <b>bodySite[x]</b> () 496 * 497 * <p> 498 * <b>Definition:</b> 499 * Indicates the site on the subject's body where the device was used ( i.e. the target site). 500 * </p> 501 */ 502 public DeviceUseStatement setBodySite(IDatatype theValue) { 503 myBodySite = theValue; 504 return this; 505 } 506 507 508 509 510 /** 511 * Gets the value(s) for <b>whenUsed</b> (when.done). 512 * creating it if it does 513 * not exist. Will not return <code>null</code>. 514 * 515 * <p> 516 * <b>Definition:</b> 517 * The time period over which the device was used. 518 * </p> 519 */ 520 public PeriodDt getWhenUsed() { 521 if (myWhenUsed == null) { 522 myWhenUsed = new PeriodDt(); 523 } 524 return myWhenUsed; 525 } 526 527 /** 528 * Sets the value(s) for <b>whenUsed</b> (when.done) 529 * 530 * <p> 531 * <b>Definition:</b> 532 * The time period over which the device was used. 533 * </p> 534 */ 535 public DeviceUseStatement setWhenUsed(PeriodDt theValue) { 536 myWhenUsed = theValue; 537 return this; 538 } 539 540 541 542 543 /** 544 * Gets the value(s) for <b>device</b> (who.actor). 545 * creating it if it does 546 * not exist. Will not return <code>null</code>. 547 * 548 * <p> 549 * <b>Definition:</b> 550 * The details of the device used. 551 * </p> 552 */ 553 public ResourceReferenceDt getDevice() { 554 if (myDevice == null) { 555 myDevice = new ResourceReferenceDt(); 556 } 557 return myDevice; 558 } 559 560 /** 561 * Sets the value(s) for <b>device</b> (who.actor) 562 * 563 * <p> 564 * <b>Definition:</b> 565 * The details of the device used. 566 * </p> 567 */ 568 public DeviceUseStatement setDevice(ResourceReferenceDt theValue) { 569 myDevice = theValue; 570 return this; 571 } 572 573 574 575 576 /** 577 * Gets the value(s) for <b>identifier</b> (id). 578 * creating it if it does 579 * not exist. Will not return <code>null</code>. 580 * 581 * <p> 582 * <b>Definition:</b> 583 * An external identifier for this statement such as an IRI. 584 * </p> 585 */ 586 public java.util.List<IdentifierDt> getIdentifier() { 587 if (myIdentifier == null) { 588 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 589 } 590 return myIdentifier; 591 } 592 593 /** 594 * Sets the value(s) for <b>identifier</b> (id) 595 * 596 * <p> 597 * <b>Definition:</b> 598 * An external identifier for this statement such as an IRI. 599 * </p> 600 */ 601 public DeviceUseStatement setIdentifier(java.util.List<IdentifierDt> theValue) { 602 myIdentifier = theValue; 603 return this; 604 } 605 606 607 608 /** 609 * Adds and returns a new value for <b>identifier</b> (id) 610 * 611 * <p> 612 * <b>Definition:</b> 613 * An external identifier for this statement such as an IRI. 614 * </p> 615 */ 616 public IdentifierDt addIdentifier() { 617 IdentifierDt newType = new IdentifierDt(); 618 getIdentifier().add(newType); 619 return newType; 620 } 621 622 /** 623 * Adds a given new value for <b>identifier</b> (id) 624 * 625 * <p> 626 * <b>Definition:</b> 627 * An external identifier for this statement such as an IRI. 628 * </p> 629 * @param theValue The identifier to add (must not be <code>null</code>) 630 */ 631 public DeviceUseStatement addIdentifier(IdentifierDt theValue) { 632 if (theValue == null) { 633 throw new NullPointerException("theValue must not be null"); 634 } 635 getIdentifier().add(theValue); 636 return this; 637 } 638 639 /** 640 * Gets the first repetition for <b>identifier</b> (id), 641 * creating it if it does not already exist. 642 * 643 * <p> 644 * <b>Definition:</b> 645 * An external identifier for this statement such as an IRI. 646 * </p> 647 */ 648 public IdentifierDt getIdentifierFirstRep() { 649 if (getIdentifier().isEmpty()) { 650 return addIdentifier(); 651 } 652 return getIdentifier().get(0); 653 } 654 655 /** 656 * Gets the value(s) for <b>indication</b> (why). 657 * creating it if it does 658 * not exist. Will not return <code>null</code>. 659 * 660 * <p> 661 * <b>Definition:</b> 662 * Reason or justification for the use of the device. 663 * </p> 664 */ 665 public java.util.List<CodeableConceptDt> getIndication() { 666 if (myIndication == null) { 667 myIndication = new java.util.ArrayList<CodeableConceptDt>(); 668 } 669 return myIndication; 670 } 671 672 /** 673 * Sets the value(s) for <b>indication</b> (why) 674 * 675 * <p> 676 * <b>Definition:</b> 677 * Reason or justification for the use of the device. 678 * </p> 679 */ 680 public DeviceUseStatement setIndication(java.util.List<CodeableConceptDt> theValue) { 681 myIndication = theValue; 682 return this; 683 } 684 685 686 687 /** 688 * Adds and returns a new value for <b>indication</b> (why) 689 * 690 * <p> 691 * <b>Definition:</b> 692 * Reason or justification for the use of the device. 693 * </p> 694 */ 695 public CodeableConceptDt addIndication() { 696 CodeableConceptDt newType = new CodeableConceptDt(); 697 getIndication().add(newType); 698 return newType; 699 } 700 701 /** 702 * Adds a given new value for <b>indication</b> (why) 703 * 704 * <p> 705 * <b>Definition:</b> 706 * Reason or justification for the use of the device. 707 * </p> 708 * @param theValue The indication to add (must not be <code>null</code>) 709 */ 710 public DeviceUseStatement addIndication(CodeableConceptDt theValue) { 711 if (theValue == null) { 712 throw new NullPointerException("theValue must not be null"); 713 } 714 getIndication().add(theValue); 715 return this; 716 } 717 718 /** 719 * Gets the first repetition for <b>indication</b> (why), 720 * creating it if it does not already exist. 721 * 722 * <p> 723 * <b>Definition:</b> 724 * Reason or justification for the use of the device. 725 * </p> 726 */ 727 public CodeableConceptDt getIndicationFirstRep() { 728 if (getIndication().isEmpty()) { 729 return addIndication(); 730 } 731 return getIndication().get(0); 732 } 733 734 /** 735 * Gets the value(s) for <b>notes</b> (). 736 * creating it if it does 737 * not exist. Will not return <code>null</code>. 738 * 739 * <p> 740 * <b>Definition:</b> 741 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 742 * </p> 743 */ 744 public java.util.List<StringDt> getNotes() { 745 if (myNotes == null) { 746 myNotes = new java.util.ArrayList<StringDt>(); 747 } 748 return myNotes; 749 } 750 751 /** 752 * Sets the value(s) for <b>notes</b> () 753 * 754 * <p> 755 * <b>Definition:</b> 756 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 757 * </p> 758 */ 759 public DeviceUseStatement setNotes(java.util.List<StringDt> theValue) { 760 myNotes = theValue; 761 return this; 762 } 763 764 765 766 /** 767 * Adds and returns a new value for <b>notes</b> () 768 * 769 * <p> 770 * <b>Definition:</b> 771 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 772 * </p> 773 */ 774 public StringDt addNotes() { 775 StringDt newType = new StringDt(); 776 getNotes().add(newType); 777 return newType; 778 } 779 780 /** 781 * Adds a given new value for <b>notes</b> () 782 * 783 * <p> 784 * <b>Definition:</b> 785 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 786 * </p> 787 * @param theValue The notes to add (must not be <code>null</code>) 788 */ 789 public DeviceUseStatement addNotes(StringDt theValue) { 790 if (theValue == null) { 791 throw new NullPointerException("theValue must not be null"); 792 } 793 getNotes().add(theValue); 794 return this; 795 } 796 797 /** 798 * Gets the first repetition for <b>notes</b> (), 799 * creating it if it does not already exist. 800 * 801 * <p> 802 * <b>Definition:</b> 803 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 804 * </p> 805 */ 806 public StringDt getNotesFirstRep() { 807 if (getNotes().isEmpty()) { 808 return addNotes(); 809 } 810 return getNotes().get(0); 811 } 812 /** 813 * Adds a new value for <b>notes</b> () 814 * 815 * <p> 816 * <b>Definition:</b> 817 * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. 818 * </p> 819 * 820 * @return Returns a reference to this object, to allow for simple chaining. 821 */ 822 public DeviceUseStatement addNotes( String theString) { 823 if (myNotes == null) { 824 myNotes = new java.util.ArrayList<StringDt>(); 825 } 826 myNotes.add(new StringDt(theString)); 827 return this; 828 } 829 830 831 /** 832 * Gets the value(s) for <b>recordedOn</b> (when.recorded). 833 * creating it if it does 834 * not exist. Will not return <code>null</code>. 835 * 836 * <p> 837 * <b>Definition:</b> 838 * The time at which the statement was made/recorded. 839 * </p> 840 */ 841 public DateTimeDt getRecordedOnElement() { 842 if (myRecordedOn == null) { 843 myRecordedOn = new DateTimeDt(); 844 } 845 return myRecordedOn; 846 } 847 848 849 /** 850 * Gets the value(s) for <b>recordedOn</b> (when.recorded). 851 * creating it if it does 852 * not exist. This method may return <code>null</code>. 853 * 854 * <p> 855 * <b>Definition:</b> 856 * The time at which the statement was made/recorded. 857 * </p> 858 */ 859 public Date getRecordedOn() { 860 return getRecordedOnElement().getValue(); 861 } 862 863 /** 864 * Sets the value(s) for <b>recordedOn</b> (when.recorded) 865 * 866 * <p> 867 * <b>Definition:</b> 868 * The time at which the statement was made/recorded. 869 * </p> 870 */ 871 public DeviceUseStatement setRecordedOn(DateTimeDt theValue) { 872 myRecordedOn = theValue; 873 return this; 874 } 875 876 877 878 /** 879 * Sets the value for <b>recordedOn</b> (when.recorded) 880 * 881 * <p> 882 * <b>Definition:</b> 883 * The time at which the statement was made/recorded. 884 * </p> 885 */ 886 public DeviceUseStatement setRecordedOnWithSecondsPrecision( Date theDate) { 887 myRecordedOn = new DateTimeDt(theDate); 888 return this; 889 } 890 891 /** 892 * Sets the value for <b>recordedOn</b> (when.recorded) 893 * 894 * <p> 895 * <b>Definition:</b> 896 * The time at which the statement was made/recorded. 897 * </p> 898 */ 899 public DeviceUseStatement setRecordedOn( Date theDate, TemporalPrecisionEnum thePrecision) { 900 myRecordedOn = new DateTimeDt(theDate, thePrecision); 901 return this; 902 } 903 904 905 /** 906 * Gets the value(s) for <b>subject</b> (who.focus). 907 * creating it if it does 908 * not exist. Will not return <code>null</code>. 909 * 910 * <p> 911 * <b>Definition:</b> 912 * The patient who used the device. 913 * </p> 914 */ 915 public ResourceReferenceDt getSubject() { 916 if (mySubject == null) { 917 mySubject = new ResourceReferenceDt(); 918 } 919 return mySubject; 920 } 921 922 /** 923 * Sets the value(s) for <b>subject</b> (who.focus) 924 * 925 * <p> 926 * <b>Definition:</b> 927 * The patient who used the device. 928 * </p> 929 */ 930 public DeviceUseStatement setSubject(ResourceReferenceDt theValue) { 931 mySubject = theValue; 932 return this; 933 } 934 935 936 937 938 /** 939 * Gets the value(s) for <b>timing[x]</b> (when.done). 940 * creating it if it does 941 * not exist. Will not return <code>null</code>. 942 * 943 * <p> 944 * <b>Definition:</b> 945 * How often the device was used. 946 * </p> 947 */ 948 public IDatatype getTiming() { 949 return myTiming; 950 } 951 952 /** 953 * Sets the value(s) for <b>timing[x]</b> (when.done) 954 * 955 * <p> 956 * <b>Definition:</b> 957 * How often the device was used. 958 * </p> 959 */ 960 public DeviceUseStatement setTiming(IDatatype theValue) { 961 myTiming = theValue; 962 return this; 963 } 964 965 966 967 968 969 970 @Override 971 public String getResourceName() { 972 return "DeviceUseStatement"; 973 } 974 975 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 976 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 977 } 978 979 980}