001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.valueset.AnimalSpeciesEnum; 042import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 043import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 044import ca.uhn.fhir.model.dstu2.resource.Appointment; 045import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 048import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 049import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 057import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 058import ca.uhn.fhir.model.dstu2.resource.BodySite; 059import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 060import ca.uhn.fhir.model.dstu2.resource.CarePlan; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityCategoryEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 063import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 064import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 065import ca.uhn.fhir.model.dstu2.resource.Claim; 066import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 067import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 068import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 069import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 070import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 071import ca.uhn.fhir.model.dstu2.composite.CodingDt; 072import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 073import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 074import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 075import ca.uhn.fhir.model.dstu2.resource.Composition; 076import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 077import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 078import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 079import ca.uhn.fhir.model.dstu2.resource.Condition; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 082import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 083import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConditionsCodesEnum; 085import ca.uhn.fhir.model.dstu2.resource.Conformance; 086import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 087import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 088import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 089import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 090import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 091import ca.uhn.fhir.model.dstu2.resource.Contract; 092import ca.uhn.fhir.model.dstu2.valueset.ContractActionCodesEnum; 093import ca.uhn.fhir.model.dstu2.valueset.ContractActorRoleCodesEnum; 094import ca.uhn.fhir.model.dstu2.valueset.ContractSubtypeCodesEnum; 095import ca.uhn.fhir.model.dstu2.valueset.ContractTermTypeCodesEnum; 096import ca.uhn.fhir.model.dstu2.valueset.ContractTypeCodesEnum; 097import ca.uhn.fhir.model.dstu2.resource.Coverage; 098import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 101import ca.uhn.fhir.model.dstu2.resource.Device; 102import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 103import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 105import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 106import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 108import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 109import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 110import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 111import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 112import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 113import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 114import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 115import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 116import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 117import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 118import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 119import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 120import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 121import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 122import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 123import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 124import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 125import ca.uhn.fhir.model.dstu2.resource.Encounter; 126import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 127import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 128import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 129import ca.uhn.fhir.model.dstu2.valueset.EncounterTypeEnum; 130import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 131import ca.uhn.fhir.model.dstu2.valueset.EnteralFormulaTypeCodesEnum; 132import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 133import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 134import ca.uhn.fhir.model.dstu2.valueset.ExceptionCodesEnum; 135import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 136import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 137import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 138import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 139import ca.uhn.fhir.model.dstu2.valueset.FlagCategoryCodesEnum; 140import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 141import ca.uhn.fhir.model.dstu2.valueset.FluidConsistencyTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.resource.Goal; 143import ca.uhn.fhir.model.dstu2.valueset.GoalCategoryEnum; 144import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 145import ca.uhn.fhir.model.dstu2.valueset.GoalStartEventEnum; 146import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 147import ca.uhn.fhir.model.dstu2.valueset.GoalStatusReasonEnum; 148import ca.uhn.fhir.model.dstu2.resource.Group; 149import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 150import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 152import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 153import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 154import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 155import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 156import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 157import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 158import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 159import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 160import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 161import ca.uhn.fhir.model.dstu2.resource.Immunization; 162import ca.uhn.fhir.model.dstu2.valueset.ImmunizationReasonCodesEnum; 163import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationDateCriterionCodesEnum; 164import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationStatusCodesEnum; 165import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRouteCodesEnum; 166import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 167import ca.uhn.fhir.model.dstu2.valueset.InterventionCodesEnum; 168import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 169import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 170import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 171import ca.uhn.fhir.model.dstu2.valueset.LateralityEnum; 172import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 175import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 176import ca.uhn.fhir.model.dstu2.resource.Location; 177import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 178import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 179import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 180import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 181import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 182import ca.uhn.fhir.model.dstu2.resource.Media; 183import ca.uhn.fhir.model.dstu2.resource.Medication; 184import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 185import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 187import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 188import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 189import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 190import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 191import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 192import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 193import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 194import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 195import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 196import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 197import ca.uhn.fhir.model.dstu2.valueset.NutrientModifierCodesEnum; 198import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 199import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 200import ca.uhn.fhir.model.dstu2.resource.Observation; 201import ca.uhn.fhir.model.dstu2.valueset.ObservationCategoryCodesEnum; 202import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 203import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 204import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 205import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 206import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 207import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 208import ca.uhn.fhir.model.dstu2.resource.Order; 209import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 210import ca.uhn.fhir.model.dstu2.resource.Organization; 211import ca.uhn.fhir.model.dstu2.valueset.OrganizationTypeEnum; 212import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 213import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 214import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 216import ca.uhn.fhir.model.dstu2.resource.Patient; 217import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 218import ca.uhn.fhir.model.dstu2.valueset.PaymentStatusCodesEnum; 219import ca.uhn.fhir.model.dstu2.valueset.PaymentTypeCodesEnum; 220import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 221import ca.uhn.fhir.model.dstu2.resource.Person; 222import ca.uhn.fhir.model.dstu2.resource.Practitioner; 223import ca.uhn.fhir.model.dstu2.valueset.PractitionerRoleEnum; 224import ca.uhn.fhir.model.dstu2.valueset.PractitionerSpecialtyEnum; 225import ca.uhn.fhir.model.dstu2.valueset.PriorityCodesEnum; 226import ca.uhn.fhir.model.dstu2.resource.Procedure; 227import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 228import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 229import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 230import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 232import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 233import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 234import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 235import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 236import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 237import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 238import ca.uhn.fhir.model.dstu2.composite.RangeDt; 239import ca.uhn.fhir.model.dstu2.composite.RatioDt; 240import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 241import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 242import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 243import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 244import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 245import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 247import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 249import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 250import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 251import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 252import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 253import ca.uhn.fhir.model.dstu2.resource.Schedule; 254import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 255import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 256import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 257import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 258import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 259import ca.uhn.fhir.model.dstu2.resource.Slot; 260import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 261import ca.uhn.fhir.model.dstu2.resource.Specimen; 262import ca.uhn.fhir.model.dstu2.valueset.SpecimenCollectionMethodEnum; 263import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 264import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 265import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 266import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 267import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 268import ca.uhn.fhir.model.dstu2.valueset.SubscriptionTagEnum; 269import ca.uhn.fhir.model.dstu2.resource.Substance; 270import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 271import ca.uhn.fhir.model.dstu2.valueset.SupplementTypeCodesEnum; 272import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 273import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 274import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestReasonEnum; 275import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 276import ca.uhn.fhir.model.dstu2.valueset.SurfaceCodesEnum; 277import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 278import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 279import ca.uhn.fhir.model.dstu2.valueset.TextureModifiedFoodTypeCodesEnum; 280import ca.uhn.fhir.model.dstu2.valueset.TextureModifierCodesEnum; 281import ca.uhn.fhir.model.dstu2.composite.TimingDt; 282import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 283import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 284import ca.uhn.fhir.model.dstu2.valueset.UDICodesEnum; 285import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 286import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 287import ca.uhn.fhir.model.dstu2.resource.ValueSet; 288import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 289import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 290import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 291import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 292import ca.uhn.fhir.model.api.IResource; 293import ca.uhn.fhir.model.dstu2.composite.AgeDt; 294import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 295import ca.uhn.fhir.model.dstu2.composite.DurationDt; 296import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 297import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 298import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 299import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 300import ca.uhn.fhir.model.primitive.Base64BinaryDt; 301import ca.uhn.fhir.model.primitive.BooleanDt; 302import ca.uhn.fhir.model.primitive.BoundCodeDt; 303import ca.uhn.fhir.model.primitive.CodeDt; 304import ca.uhn.fhir.model.primitive.DateDt; 305import ca.uhn.fhir.model.primitive.DateTimeDt; 306import ca.uhn.fhir.model.primitive.DecimalDt; 307import ca.uhn.fhir.model.primitive.IdDt; 308import ca.uhn.fhir.model.primitive.InstantDt; 309import ca.uhn.fhir.model.primitive.IntegerDt; 310import ca.uhn.fhir.model.primitive.OidDt; 311import ca.uhn.fhir.model.primitive.PositiveIntDt; 312import ca.uhn.fhir.model.primitive.StringDt; 313import ca.uhn.fhir.model.primitive.TimeDt; 314import ca.uhn.fhir.model.primitive.UnsignedIntDt; 315import ca.uhn.fhir.model.primitive.UriDt; 316 317 318/** 319 * HAPI/FHIR <b>Slot</b> Resource 320 * (workflow.scheduling) 321 * 322 * <p> 323 * <b>Definition:</b> 324 * A slot of time on a schedule that may be available for booking appointments. 325 * </p> 326 * 327 * <p> 328 * <b>Requirements:</b> 329 * 330 * </p> 331 * 332 * <p> 333 * <b>Profile Definition:</b> 334 * <a href="http://hl7.org/fhir/profiles/Slot">http://hl7.org/fhir/profiles/Slot</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="Slot", profile="http://hl7.org/fhir/profiles/Slot", id="slot") 339public class Slot extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>slot-type</b> 344 * <p> 345 * Description: <b>The type of appointments that can be booked into the slot</b><br> 346 * Type: <b>token</b><br> 347 * Path: <b>Slot.type</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="slot-type", path="Slot.type", description="The type of appointments that can be booked into the slot", type="token" ) 351 public static final String SP_SLOT_TYPE = "slot-type"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>slot-type</b> 355 * <p> 356 * Description: <b>The type of appointments that can be booked into the slot</b><br> 357 * Type: <b>token</b><br> 358 * Path: <b>Slot.type</b><br> 359 * </p> 360 */ 361 public static final TokenClientParam SLOT_TYPE = new TokenClientParam(SP_SLOT_TYPE); 362 363 /** 364 * Search parameter constant for <b>schedule</b> 365 * <p> 366 * Description: <b>The Schedule Resource that we are seeking a slot within</b><br> 367 * Type: <b>reference</b><br> 368 * Path: <b>Slot.schedule</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="schedule", path="Slot.schedule", description="The Schedule Resource that we are seeking a slot within", type="reference" ) 372 public static final String SP_SCHEDULE = "schedule"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>schedule</b> 376 * <p> 377 * Description: <b>The Schedule Resource that we are seeking a slot within</b><br> 378 * Type: <b>reference</b><br> 379 * Path: <b>Slot.schedule</b><br> 380 * </p> 381 */ 382 public static final ReferenceClientParam SCHEDULE = new ReferenceClientParam(SP_SCHEDULE); 383 384 /** 385 * Search parameter constant for <b>start</b> 386 * <p> 387 * Description: <b>Appointment date/time.</b><br> 388 * Type: <b>date</b><br> 389 * Path: <b>Slot.start</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="start", path="Slot.start", description="Appointment date/time.", type="date" ) 393 public static final String SP_START = "start"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>start</b> 397 * <p> 398 * Description: <b>Appointment date/time.</b><br> 399 * Type: <b>date</b><br> 400 * Path: <b>Slot.start</b><br> 401 * </p> 402 */ 403 public static final DateClientParam START = new DateClientParam(SP_START); 404 405 /** 406 * Search parameter constant for <b>fb-type</b> 407 * <p> 408 * Description: <b>The free/busy status of the appointment</b><br> 409 * Type: <b>token</b><br> 410 * Path: <b>Slot.freeBusyType</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="fb-type", path="Slot.freeBusyType", description="The free/busy status of the appointment", type="token" ) 414 public static final String SP_FB_TYPE = "fb-type"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>fb-type</b> 418 * <p> 419 * Description: <b>The free/busy status of the appointment</b><br> 420 * Type: <b>token</b><br> 421 * Path: <b>Slot.freeBusyType</b><br> 422 * </p> 423 */ 424 public static final TokenClientParam FB_TYPE = new TokenClientParam(SP_FB_TYPE); 425 426 /** 427 * Search parameter constant for <b>identifier</b> 428 * <p> 429 * Description: <b>A Slot Identifier</b><br> 430 * Type: <b>token</b><br> 431 * Path: <b>Slot.identifier</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="identifier", path="Slot.identifier", description="A Slot Identifier", type="token" ) 435 public static final String SP_IDENTIFIER = "identifier"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 439 * <p> 440 * Description: <b>A Slot Identifier</b><br> 441 * Type: <b>token</b><br> 442 * Path: <b>Slot.identifier</b><br> 443 * </p> 444 */ 445 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 446 447 448 /** 449 * Constant for fluent queries to be used to add include statements. Specifies 450 * the path value of "<b>Slot:schedule</b>". 451 */ 452 public static final Include INCLUDE_SCHEDULE = new Include("Slot:schedule"); 453 454 455 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 456 @Description( 457 shortDefinition="id", 458 formalDefinition="" 459 ) 460 private java.util.List<IdentifierDt> myIdentifier; 461 462 @Child(name="type", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=false, modifier=false) 463 @Description( 464 shortDefinition="class", 465 formalDefinition="" 466 ) 467 private CodeableConceptDt myType; 468 469 @Child(name="schedule", order=2, min=1, max=1, summary=true, modifier=false, type={ 470 ca.uhn.fhir.model.dstu2.resource.Schedule.class }) 471 @Description( 472 shortDefinition="", 473 formalDefinition="" 474 ) 475 private ResourceReferenceDt mySchedule; 476 477 @Child(name="freeBusyType", type=CodeDt.class, order=3, min=1, max=1, summary=true, modifier=false) 478 @Description( 479 shortDefinition="", 480 formalDefinition="" 481 ) 482 private BoundCodeDt<SlotStatusEnum> myFreeBusyType; 483 484 @Child(name="start", type=InstantDt.class, order=4, min=1, max=1, summary=true, modifier=false) 485 @Description( 486 shortDefinition="when.planned", 487 formalDefinition="" 488 ) 489 private InstantDt myStart; 490 491 @Child(name="end", type=InstantDt.class, order=5, min=1, max=1, summary=true, modifier=false) 492 @Description( 493 shortDefinition="when.planned", 494 formalDefinition="" 495 ) 496 private InstantDt myEnd; 497 498 @Child(name="overbooked", type=BooleanDt.class, order=6, min=0, max=1, summary=false, modifier=false) 499 @Description( 500 shortDefinition="", 501 formalDefinition="" 502 ) 503 private BooleanDt myOverbooked; 504 505 @Child(name="comment", type=StringDt.class, order=7, min=0, max=1, summary=false, modifier=false) 506 @Description( 507 shortDefinition="", 508 formalDefinition="" 509 ) 510 private StringDt myComment; 511 512 513 @Override 514 public boolean isEmpty() { 515 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myType, mySchedule, myFreeBusyType, myStart, myEnd, myOverbooked, myComment); 516 } 517 518 @Override 519 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 520 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myType, mySchedule, myFreeBusyType, myStart, myEnd, myOverbooked, myComment); 521 } 522 523 /** 524 * Gets the value(s) for <b>identifier</b> (id). 525 * creating it if it does 526 * not exist. Will not return <code>null</code>. 527 * 528 * <p> 529 * <b>Definition:</b> 530 * 531 * </p> 532 */ 533 public java.util.List<IdentifierDt> getIdentifier() { 534 if (myIdentifier == null) { 535 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 536 } 537 return myIdentifier; 538 } 539 540 /** 541 * Sets the value(s) for <b>identifier</b> (id) 542 * 543 * <p> 544 * <b>Definition:</b> 545 * 546 * </p> 547 */ 548 public Slot setIdentifier(java.util.List<IdentifierDt> theValue) { 549 myIdentifier = theValue; 550 return this; 551 } 552 553 554 555 /** 556 * Adds and returns a new value for <b>identifier</b> (id) 557 * 558 * <p> 559 * <b>Definition:</b> 560 * 561 * </p> 562 */ 563 public IdentifierDt addIdentifier() { 564 IdentifierDt newType = new IdentifierDt(); 565 getIdentifier().add(newType); 566 return newType; 567 } 568 569 /** 570 * Adds a given new value for <b>identifier</b> (id) 571 * 572 * <p> 573 * <b>Definition:</b> 574 * 575 * </p> 576 * @param theValue The identifier to add (must not be <code>null</code>) 577 */ 578 public Slot addIdentifier(IdentifierDt theValue) { 579 if (theValue == null) { 580 throw new NullPointerException("theValue must not be null"); 581 } 582 getIdentifier().add(theValue); 583 return this; 584 } 585 586 /** 587 * Gets the first repetition for <b>identifier</b> (id), 588 * creating it if it does not already exist. 589 * 590 * <p> 591 * <b>Definition:</b> 592 * 593 * </p> 594 */ 595 public IdentifierDt getIdentifierFirstRep() { 596 if (getIdentifier().isEmpty()) { 597 return addIdentifier(); 598 } 599 return getIdentifier().get(0); 600 } 601 602 /** 603 * Gets the value(s) for <b>type</b> (class). 604 * creating it if it does 605 * not exist. Will not return <code>null</code>. 606 * 607 * <p> 608 * <b>Definition:</b> 609 * 610 * </p> 611 */ 612 public CodeableConceptDt getType() { 613 if (myType == null) { 614 myType = new CodeableConceptDt(); 615 } 616 return myType; 617 } 618 619 /** 620 * Sets the value(s) for <b>type</b> (class) 621 * 622 * <p> 623 * <b>Definition:</b> 624 * 625 * </p> 626 */ 627 public Slot setType(CodeableConceptDt theValue) { 628 myType = theValue; 629 return this; 630 } 631 632 633 634 635 /** 636 * Gets the value(s) for <b>schedule</b> (). 637 * creating it if it does 638 * not exist. Will not return <code>null</code>. 639 * 640 * <p> 641 * <b>Definition:</b> 642 * 643 * </p> 644 */ 645 public ResourceReferenceDt getSchedule() { 646 if (mySchedule == null) { 647 mySchedule = new ResourceReferenceDt(); 648 } 649 return mySchedule; 650 } 651 652 /** 653 * Sets the value(s) for <b>schedule</b> () 654 * 655 * <p> 656 * <b>Definition:</b> 657 * 658 * </p> 659 */ 660 public Slot setSchedule(ResourceReferenceDt theValue) { 661 mySchedule = theValue; 662 return this; 663 } 664 665 666 667 668 /** 669 * Gets the value(s) for <b>freeBusyType</b> (). 670 * creating it if it does 671 * not exist. Will not return <code>null</code>. 672 * 673 * <p> 674 * <b>Definition:</b> 675 * 676 * </p> 677 */ 678 public BoundCodeDt<SlotStatusEnum> getFreeBusyTypeElement() { 679 if (myFreeBusyType == null) { 680 myFreeBusyType = new BoundCodeDt<SlotStatusEnum>(SlotStatusEnum.VALUESET_BINDER); 681 } 682 return myFreeBusyType; 683 } 684 685 686 /** 687 * Gets the value(s) for <b>freeBusyType</b> (). 688 * creating it if it does 689 * not exist. Will not return <code>null</code>. 690 * 691 * <p> 692 * <b>Definition:</b> 693 * 694 * </p> 695 */ 696 public String getFreeBusyType() { 697 return getFreeBusyTypeElement().getValue(); 698 } 699 700 /** 701 * Sets the value(s) for <b>freeBusyType</b> () 702 * 703 * <p> 704 * <b>Definition:</b> 705 * 706 * </p> 707 */ 708 public Slot setFreeBusyType(BoundCodeDt<SlotStatusEnum> theValue) { 709 myFreeBusyType = theValue; 710 return this; 711 } 712 713 714 715 /** 716 * Sets the value(s) for <b>freeBusyType</b> () 717 * 718 * <p> 719 * <b>Definition:</b> 720 * 721 * </p> 722 */ 723 public Slot setFreeBusyType(SlotStatusEnum theValue) { 724 setFreeBusyType(new BoundCodeDt<SlotStatusEnum>(SlotStatusEnum.VALUESET_BINDER, theValue)); 725 726/* 727 getFreeBusyTypeElement().setValueAsEnum(theValue); 728*/ 729 return this; 730 } 731 732 733 /** 734 * Gets the value(s) for <b>start</b> (when.planned). 735 * creating it if it does 736 * not exist. Will not return <code>null</code>. 737 * 738 * <p> 739 * <b>Definition:</b> 740 * 741 * </p> 742 */ 743 public InstantDt getStartElement() { 744 if (myStart == null) { 745 myStart = new InstantDt(); 746 } 747 return myStart; 748 } 749 750 751 /** 752 * Gets the value(s) for <b>start</b> (when.planned). 753 * creating it if it does 754 * not exist. Will not return <code>null</code>. 755 * 756 * <p> 757 * <b>Definition:</b> 758 * 759 * </p> 760 */ 761 public Date getStart() { 762 return getStartElement().getValue(); 763 } 764 765 /** 766 * Sets the value(s) for <b>start</b> (when.planned) 767 * 768 * <p> 769 * <b>Definition:</b> 770 * 771 * </p> 772 */ 773 public Slot setStart(InstantDt theValue) { 774 myStart = theValue; 775 return this; 776 } 777 778 779 780 /** 781 * Sets the value for <b>start</b> (when.planned) 782 * 783 * <p> 784 * <b>Definition:</b> 785 * 786 * </p> 787 */ 788 public Slot setStartWithMillisPrecision( Date theDate) { 789 myStart = new InstantDt(theDate); 790 return this; 791 } 792 793 /** 794 * Sets the value for <b>start</b> (when.planned) 795 * 796 * <p> 797 * <b>Definition:</b> 798 * 799 * </p> 800 */ 801 public Slot setStart( Date theDate, TemporalPrecisionEnum thePrecision) { 802 myStart = new InstantDt(theDate, thePrecision); 803 return this; 804 } 805 806 807 /** 808 * Gets the value(s) for <b>end</b> (when.planned). 809 * creating it if it does 810 * not exist. Will not return <code>null</code>. 811 * 812 * <p> 813 * <b>Definition:</b> 814 * 815 * </p> 816 */ 817 public InstantDt getEndElement() { 818 if (myEnd == null) { 819 myEnd = new InstantDt(); 820 } 821 return myEnd; 822 } 823 824 825 /** 826 * Gets the value(s) for <b>end</b> (when.planned). 827 * creating it if it does 828 * not exist. Will not return <code>null</code>. 829 * 830 * <p> 831 * <b>Definition:</b> 832 * 833 * </p> 834 */ 835 public Date getEnd() { 836 return getEndElement().getValue(); 837 } 838 839 /** 840 * Sets the value(s) for <b>end</b> (when.planned) 841 * 842 * <p> 843 * <b>Definition:</b> 844 * 845 * </p> 846 */ 847 public Slot setEnd(InstantDt theValue) { 848 myEnd = theValue; 849 return this; 850 } 851 852 853 854 /** 855 * Sets the value for <b>end</b> (when.planned) 856 * 857 * <p> 858 * <b>Definition:</b> 859 * 860 * </p> 861 */ 862 public Slot setEndWithMillisPrecision( Date theDate) { 863 myEnd = new InstantDt(theDate); 864 return this; 865 } 866 867 /** 868 * Sets the value for <b>end</b> (when.planned) 869 * 870 * <p> 871 * <b>Definition:</b> 872 * 873 * </p> 874 */ 875 public Slot setEnd( Date theDate, TemporalPrecisionEnum thePrecision) { 876 myEnd = new InstantDt(theDate, thePrecision); 877 return this; 878 } 879 880 881 /** 882 * Gets the value(s) for <b>overbooked</b> (). 883 * creating it if it does 884 * not exist. Will not return <code>null</code>. 885 * 886 * <p> 887 * <b>Definition:</b> 888 * 889 * </p> 890 */ 891 public BooleanDt getOverbookedElement() { 892 if (myOverbooked == null) { 893 myOverbooked = new BooleanDt(); 894 } 895 return myOverbooked; 896 } 897 898 899 /** 900 * Gets the value(s) for <b>overbooked</b> (). 901 * creating it if it does 902 * not exist. Will not return <code>null</code>. 903 * 904 * <p> 905 * <b>Definition:</b> 906 * 907 * </p> 908 */ 909 public Boolean getOverbooked() { 910 return getOverbookedElement().getValue(); 911 } 912 913 /** 914 * Sets the value(s) for <b>overbooked</b> () 915 * 916 * <p> 917 * <b>Definition:</b> 918 * 919 * </p> 920 */ 921 public Slot setOverbooked(BooleanDt theValue) { 922 myOverbooked = theValue; 923 return this; 924 } 925 926 927 928 /** 929 * Sets the value for <b>overbooked</b> () 930 * 931 * <p> 932 * <b>Definition:</b> 933 * 934 * </p> 935 */ 936 public Slot setOverbooked( boolean theBoolean) { 937 myOverbooked = new BooleanDt(theBoolean); 938 return this; 939 } 940 941 942 /** 943 * Gets the value(s) for <b>comment</b> (). 944 * creating it if it does 945 * not exist. Will not return <code>null</code>. 946 * 947 * <p> 948 * <b>Definition:</b> 949 * 950 * </p> 951 */ 952 public StringDt getCommentElement() { 953 if (myComment == null) { 954 myComment = new StringDt(); 955 } 956 return myComment; 957 } 958 959 960 /** 961 * Gets the value(s) for <b>comment</b> (). 962 * creating it if it does 963 * not exist. Will not return <code>null</code>. 964 * 965 * <p> 966 * <b>Definition:</b> 967 * 968 * </p> 969 */ 970 public String getComment() { 971 return getCommentElement().getValue(); 972 } 973 974 /** 975 * Sets the value(s) for <b>comment</b> () 976 * 977 * <p> 978 * <b>Definition:</b> 979 * 980 * </p> 981 */ 982 public Slot setComment(StringDt theValue) { 983 myComment = theValue; 984 return this; 985 } 986 987 988 989 /** 990 * Sets the value for <b>comment</b> () 991 * 992 * <p> 993 * <b>Definition:</b> 994 * 995 * </p> 996 */ 997 public Slot setComment( String theString) { 998 myComment = new StringDt(theString); 999 return this; 1000 } 1001 1002 1003 1004 1005 @Override 1006 public String getResourceName() { 1007 return "Slot"; 1008 } 1009 1010 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1011 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1012 } 1013 1014 1015}