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>HealthcareService</b> Resource 282 * (administrative.group) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * The details of a healthcare service available at a location. 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/HealthcareService">http://hl7.org/fhir/profiles/HealthcareService</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="HealthcareService", profile="http://hl7.org/fhir/profiles/HealthcareService", id="healthcareservice") 301public class HealthcareService extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource 303 { 304 305 /** 306 * Search parameter constant for <b>identifier</b> 307 * <p> 308 * Description: <b></b><br> 309 * Type: <b>token</b><br> 310 * Path: <b>HealthcareService.identifier</b><br> 311 * </p> 312 */ 313 @SearchParamDefinition(name="identifier", path="HealthcareService.identifier", description="", type="token" 314 ) 315 public static final String SP_IDENTIFIER = "identifier"; 316 317 /** 318 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 319 * <p> 320 * Description: <b></b><br> 321 * Type: <b>token</b><br> 322 * Path: <b>HealthcareService.identifier</b><br> 323 * </p> 324 */ 325 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 326 327 /** 328 * Search parameter constant for <b>servicecategory</b> 329 * <p> 330 * Description: <b>Service Category of the Healthcare Service</b><br> 331 * Type: <b>token</b><br> 332 * Path: <b>HealthcareService.serviceCategory</b><br> 333 * </p> 334 */ 335 @SearchParamDefinition(name="servicecategory", path="HealthcareService.serviceCategory", description="Service Category of the Healthcare Service", type="token" 336 ) 337 public static final String SP_SERVICECATEGORY = "servicecategory"; 338 339 /** 340 * <b>Fluent Client</b> search parameter constant for <b>servicecategory</b> 341 * <p> 342 * Description: <b>Service Category of the Healthcare Service</b><br> 343 * Type: <b>token</b><br> 344 * Path: <b>HealthcareService.serviceCategory</b><br> 345 * </p> 346 */ 347 public static final TokenClientParam SERVICECATEGORY = new TokenClientParam(SP_SERVICECATEGORY); 348 349 /** 350 * Search parameter constant for <b>servicetype</b> 351 * <p> 352 * Description: <b>The type of service provided by this healthcare service</b><br> 353 * Type: <b>token</b><br> 354 * Path: <b>HealthcareService.serviceType.type</b><br> 355 * </p> 356 */ 357 @SearchParamDefinition(name="servicetype", path="HealthcareService.serviceType.type", description="The type of service provided by this healthcare service", type="token" 358 ) 359 public static final String SP_SERVICETYPE = "servicetype"; 360 361 /** 362 * <b>Fluent Client</b> search parameter constant for <b>servicetype</b> 363 * <p> 364 * Description: <b>The type of service provided by this healthcare service</b><br> 365 * Type: <b>token</b><br> 366 * Path: <b>HealthcareService.serviceType.type</b><br> 367 * </p> 368 */ 369 public static final TokenClientParam SERVICETYPE = new TokenClientParam(SP_SERVICETYPE); 370 371 /** 372 * Search parameter constant for <b>name</b> 373 * <p> 374 * Description: <b>A portion of the Healthcare service name</b><br> 375 * Type: <b>string</b><br> 376 * Path: <b>HealthcareService.serviceName</b><br> 377 * </p> 378 */ 379 @SearchParamDefinition(name="name", path="HealthcareService.serviceName", description="A portion of the Healthcare service name", type="string" 380 ) 381 public static final String SP_NAME = "name"; 382 383 /** 384 * <b>Fluent Client</b> search parameter constant for <b>name</b> 385 * <p> 386 * Description: <b>A portion of the Healthcare service name</b><br> 387 * Type: <b>string</b><br> 388 * Path: <b>HealthcareService.serviceName</b><br> 389 * </p> 390 */ 391 public static final StringClientParam NAME = new StringClientParam(SP_NAME); 392 393 /** 394 * Search parameter constant for <b>location</b> 395 * <p> 396 * Description: <b>The location of the Healthcare Service</b><br> 397 * Type: <b>reference</b><br> 398 * Path: <b>HealthcareService.location</b><br> 399 * </p> 400 */ 401 @SearchParamDefinition(name="location", path="HealthcareService.location", description="The location of the Healthcare Service", type="reference" 402 ) 403 public static final String SP_LOCATION = "location"; 404 405 /** 406 * <b>Fluent Client</b> search parameter constant for <b>location</b> 407 * <p> 408 * Description: <b>The location of the Healthcare Service</b><br> 409 * Type: <b>reference</b><br> 410 * Path: <b>HealthcareService.location</b><br> 411 * </p> 412 */ 413 public static final ReferenceClientParam LOCATION = new ReferenceClientParam(SP_LOCATION); 414 415 /** 416 * Search parameter constant for <b>organization</b> 417 * <p> 418 * Description: <b>The organization that provides this Healthcare Service</b><br> 419 * Type: <b>reference</b><br> 420 * Path: <b>HealthcareService.providedBy</b><br> 421 * </p> 422 */ 423 @SearchParamDefinition(name="organization", path="HealthcareService.providedBy", description="The organization that provides this Healthcare Service", type="reference" 424 ) 425 public static final String SP_ORGANIZATION = "organization"; 426 427 /** 428 * <b>Fluent Client</b> search parameter constant for <b>organization</b> 429 * <p> 430 * Description: <b>The organization that provides this Healthcare Service</b><br> 431 * Type: <b>reference</b><br> 432 * Path: <b>HealthcareService.providedBy</b><br> 433 * </p> 434 */ 435 public static final ReferenceClientParam ORGANIZATION = new ReferenceClientParam(SP_ORGANIZATION); 436 437 /** 438 * Search parameter constant for <b>programname</b> 439 * <p> 440 * Description: <b>One of the Program Names serviced by this HealthcareService</b><br> 441 * Type: <b>string</b><br> 442 * Path: <b>HealthcareService.programName</b><br> 443 * </p> 444 */ 445 @SearchParamDefinition(name="programname", path="HealthcareService.programName", description="One of the Program Names serviced by this HealthcareService", type="string" 446 ) 447 public static final String SP_PROGRAMNAME = "programname"; 448 449 /** 450 * <b>Fluent Client</b> search parameter constant for <b>programname</b> 451 * <p> 452 * Description: <b>One of the Program Names serviced by this HealthcareService</b><br> 453 * Type: <b>string</b><br> 454 * Path: <b>HealthcareService.programName</b><br> 455 * </p> 456 */ 457 public static final StringClientParam PROGRAMNAME = new StringClientParam(SP_PROGRAMNAME); 458 459 /** 460 * Search parameter constant for <b>characteristic</b> 461 * <p> 462 * Description: <b>One of the HealthcareService's characteristics</b><br> 463 * Type: <b>token</b><br> 464 * Path: <b>HealthcareService.characteristic</b><br> 465 * </p> 466 */ 467 @SearchParamDefinition(name="characteristic", path="HealthcareService.characteristic", description="One of the HealthcareService's characteristics", type="token" 468 ) 469 public static final String SP_CHARACTERISTIC = "characteristic"; 470 471 /** 472 * <b>Fluent Client</b> search parameter constant for <b>characteristic</b> 473 * <p> 474 * Description: <b>One of the HealthcareService's characteristics</b><br> 475 * Type: <b>token</b><br> 476 * Path: <b>HealthcareService.characteristic</b><br> 477 * </p> 478 */ 479 public static final TokenClientParam CHARACTERISTIC = new TokenClientParam(SP_CHARACTERISTIC); 480 481 482 /** 483 * Constant for fluent queries to be used to add include statements. Specifies 484 * the path value of "<b>HealthcareService:location</b>". 485 */ 486 public static final Include INCLUDE_LOCATION = new Include("HealthcareService:location"); 487 488 /** 489 * Constant for fluent queries to be used to add include statements. Specifies 490 * the path value of "<b>HealthcareService:organization</b>". 491 */ 492 public static final Include INCLUDE_ORGANIZATION = new Include("HealthcareService:organization"); 493 494 495 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 496 @Description( 497 shortDefinition="id", 498 formalDefinition="External identifiers for this item" 499 ) 500 private java.util.List<IdentifierDt> myIdentifier; 501 502 @Child(name="providedBy", order=1, min=0, max=1, summary=true, modifier=false, type={ 503 ca.uhn.fhir.model.dstu2.resource.Organization.class 504 }) 505 @Description( 506 shortDefinition="", 507 formalDefinition="The organization that provides this healthcare service" 508 ) 509 private ResourceReferenceDt myProvidedBy; 510 511 @Child(name="serviceCategory", type=CodeableConceptDt.class, order=2, min=0, max=1, summary=true, modifier=false) 512 @Description( 513 shortDefinition="class", 514 formalDefinition="Identifies the broad category of service being performed or delivered" 515 ) 516 private CodeableConceptDt myServiceCategory; 517 518 @Child(name="serviceType", order=3, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 519 @Description( 520 shortDefinition="", 521 formalDefinition="A specific type of service that may be delivered or performed" 522 ) 523 private java.util.List<ServiceType> myServiceType; 524 525 @Child(name="location", order=4, min=1, max=1, summary=true, modifier=false, type={ 526 ca.uhn.fhir.model.dstu2.resource.Location.class 527 }) 528 @Description( 529 shortDefinition="where", 530 formalDefinition="The location where this healthcare service may be provided" 531 ) 532 private ResourceReferenceDt myLocation; 533 534 @Child(name="serviceName", type=StringDt.class, order=5, min=0, max=1, summary=true, modifier=false) 535 @Description( 536 shortDefinition="", 537 formalDefinition="Further description of the service as it would be presented to a consumer while searching" 538 ) 539 private StringDt myServiceName; 540 541 @Child(name="comment", type=StringDt.class, order=6, min=0, max=1, summary=true, modifier=false) 542 @Description( 543 shortDefinition="", 544 formalDefinition="Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName" 545 ) 546 private StringDt myComment; 547 548 @Child(name="extraDetails", type=StringDt.class, order=7, min=0, max=1, summary=false, modifier=false) 549 @Description( 550 shortDefinition="", 551 formalDefinition="Extra details about the service that can't be placed in the other fields" 552 ) 553 private StringDt myExtraDetails; 554 555 @Child(name="photo", type=AttachmentDt.class, order=8, min=0, max=1, summary=true, modifier=false) 556 @Description( 557 shortDefinition="", 558 formalDefinition="If there is a photo/symbol associated with this HealthcareService, it may be included here to facilitate quick identification of the service in a list" 559 ) 560 private AttachmentDt myPhoto; 561 562 @Child(name="telecom", type=ContactPointDt.class, order=9, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 563 @Description( 564 shortDefinition="", 565 formalDefinition="List of contacts related to this specific healthcare service" 566 ) 567 private java.util.List<ContactPointDt> myTelecom; 568 569 @Child(name="coverageArea", order=10, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false, type={ 570 ca.uhn.fhir.model.dstu2.resource.Location.class 571 }) 572 @Description( 573 shortDefinition="", 574 formalDefinition="The location(s) that this service is available to (not where the service is provided)" 575 ) 576 private java.util.List<ResourceReferenceDt> myCoverageArea; 577 578 @Child(name="serviceProvisionCode", type=CodeableConceptDt.class, order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 579 @Description( 580 shortDefinition="", 581 formalDefinition="The code(s) that detail the conditions under which the healthcare service is available/offered" 582 ) 583 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/service-provision-conditions") 584 private java.util.List<BoundCodeableConceptDt<ServiceProvisionConditionsEnum>> myServiceProvisionCode; 585 586 @Child(name="eligibility", type=CodeableConceptDt.class, order=12, min=0, max=1, summary=false, modifier=false) 587 @Description( 588 shortDefinition="", 589 formalDefinition="Does this service have specific eligibility requirements that need to be met in order to use the service?" 590 ) 591 private CodeableConceptDt myEligibility; 592 593 @Child(name="eligibilityNote", type=StringDt.class, order=13, min=0, max=1, summary=false, modifier=false) 594 @Description( 595 shortDefinition="", 596 formalDefinition="Describes the eligibility conditions for the service" 597 ) 598 private StringDt myEligibilityNote; 599 600 @Child(name="programName", type=StringDt.class, order=14, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 601 @Description( 602 shortDefinition="", 603 formalDefinition="Program Names that can be used to categorize the service" 604 ) 605 private java.util.List<StringDt> myProgramName; 606 607 @Child(name="characteristic", type=CodeableConceptDt.class, order=15, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 608 @Description( 609 shortDefinition="", 610 formalDefinition="Collection of characteristics (attributes)" 611 ) 612 private java.util.List<CodeableConceptDt> myCharacteristic; 613 614 @Child(name="referralMethod", type=CodeableConceptDt.class, order=16, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 615 @Description( 616 shortDefinition="", 617 formalDefinition="Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required" 618 ) 619 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/service-referral-method") 620 private java.util.List<BoundCodeableConceptDt<ReferralMethodEnum>> myReferralMethod; 621 622 @Child(name="publicKey", type=StringDt.class, order=17, min=0, max=1, summary=false, modifier=false) 623 @Description( 624 shortDefinition="", 625 formalDefinition="The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available" 626 ) 627 private StringDt myPublicKey; 628 629 @Child(name="appointmentRequired", type=BooleanDt.class, order=18, min=0, max=1, summary=false, modifier=false) 630 @Description( 631 shortDefinition="", 632 formalDefinition="Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service." 633 ) 634 private BooleanDt myAppointmentRequired; 635 636 @Child(name="availableTime", order=19, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 637 @Description( 638 shortDefinition="", 639 formalDefinition="A collection of times that the Service Site is available" 640 ) 641 private java.util.List<AvailableTime> myAvailableTime; 642 643 @Child(name="notAvailable", order=20, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 644 @Description( 645 shortDefinition="", 646 formalDefinition="The HealthcareService is not available during this period of time due to the provided reason" 647 ) 648 private java.util.List<NotAvailable> myNotAvailable; 649 650 @Child(name="availabilityExceptions", type=StringDt.class, order=21, min=0, max=1, summary=false, modifier=false) 651 @Description( 652 shortDefinition="", 653 formalDefinition="A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times" 654 ) 655 private StringDt myAvailabilityExceptions; 656 657 658 @Override 659 public boolean isEmpty() { 660 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myProvidedBy, myServiceCategory, myServiceType, myLocation, myServiceName, myComment, myExtraDetails, myPhoto, myTelecom, myCoverageArea, myServiceProvisionCode, myEligibility, myEligibilityNote, myProgramName, myCharacteristic, myReferralMethod, myPublicKey, myAppointmentRequired, myAvailableTime, myNotAvailable, myAvailabilityExceptions); 661 } 662 663 @Override 664 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 665 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myProvidedBy, myServiceCategory, myServiceType, myLocation, myServiceName, myComment, myExtraDetails, myPhoto, myTelecom, myCoverageArea, myServiceProvisionCode, myEligibility, myEligibilityNote, myProgramName, myCharacteristic, myReferralMethod, myPublicKey, myAppointmentRequired, myAvailableTime, myNotAvailable, myAvailabilityExceptions); 666 } 667 668 /** 669 * Gets the value(s) for <b>identifier</b> (id). 670 * creating it if it does 671 * not exist. Will not return <code>null</code>. 672 * 673 * <p> 674 * <b>Definition:</b> 675 * External identifiers for this item 676 * </p> 677 */ 678 public java.util.List<IdentifierDt> getIdentifier() { 679 if (myIdentifier == null) { 680 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 681 } 682 return myIdentifier; 683 } 684 685 /** 686 * Sets the value(s) for <b>identifier</b> (id) 687 * 688 * <p> 689 * <b>Definition:</b> 690 * External identifiers for this item 691 * </p> 692 */ 693 public HealthcareService setIdentifier(java.util.List<IdentifierDt> theValue) { 694 myIdentifier = theValue; 695 return this; 696 } 697 698 699 700 /** 701 * Adds and returns a new value for <b>identifier</b> (id) 702 * 703 * <p> 704 * <b>Definition:</b> 705 * External identifiers for this item 706 * </p> 707 */ 708 public IdentifierDt addIdentifier() { 709 IdentifierDt newType = new IdentifierDt(); 710 getIdentifier().add(newType); 711 return newType; 712 } 713 714 /** 715 * Adds a given new value for <b>identifier</b> (id) 716 * 717 * <p> 718 * <b>Definition:</b> 719 * External identifiers for this item 720 * </p> 721 * @param theValue The identifier to add (must not be <code>null</code>) 722 */ 723 public HealthcareService addIdentifier(IdentifierDt theValue) { 724 if (theValue == null) { 725 throw new NullPointerException("theValue must not be null"); 726 } 727 getIdentifier().add(theValue); 728 return this; 729 } 730 731 /** 732 * Gets the first repetition for <b>identifier</b> (id), 733 * creating it if it does not already exist. 734 * 735 * <p> 736 * <b>Definition:</b> 737 * External identifiers for this item 738 * </p> 739 */ 740 public IdentifierDt getIdentifierFirstRep() { 741 if (getIdentifier().isEmpty()) { 742 return addIdentifier(); 743 } 744 return getIdentifier().get(0); 745 } 746 747 /** 748 * Gets the value(s) for <b>providedBy</b> (). 749 * creating it if it does 750 * not exist. Will not return <code>null</code>. 751 * 752 * <p> 753 * <b>Definition:</b> 754 * The organization that provides this healthcare service 755 * </p> 756 */ 757 public ResourceReferenceDt getProvidedBy() { 758 if (myProvidedBy == null) { 759 myProvidedBy = new ResourceReferenceDt(); 760 } 761 return myProvidedBy; 762 } 763 764 /** 765 * Sets the value(s) for <b>providedBy</b> () 766 * 767 * <p> 768 * <b>Definition:</b> 769 * The organization that provides this healthcare service 770 * </p> 771 */ 772 public HealthcareService setProvidedBy(ResourceReferenceDt theValue) { 773 myProvidedBy = theValue; 774 return this; 775 } 776 777 778 779 780 /** 781 * Gets the value(s) for <b>serviceCategory</b> (class). 782 * creating it if it does 783 * not exist. Will not return <code>null</code>. 784 * 785 * <p> 786 * <b>Definition:</b> 787 * Identifies the broad category of service being performed or delivered 788 * </p> 789 */ 790 public CodeableConceptDt getServiceCategory() { 791 if (myServiceCategory == null) { 792 myServiceCategory = new CodeableConceptDt(); 793 } 794 return myServiceCategory; 795 } 796 797 /** 798 * Sets the value(s) for <b>serviceCategory</b> (class) 799 * 800 * <p> 801 * <b>Definition:</b> 802 * Identifies the broad category of service being performed or delivered 803 * </p> 804 */ 805 public HealthcareService setServiceCategory(CodeableConceptDt theValue) { 806 myServiceCategory = theValue; 807 return this; 808 } 809 810 811 812 813 /** 814 * Gets the value(s) for <b>serviceType</b> (). 815 * creating it if it does 816 * not exist. Will not return <code>null</code>. 817 * 818 * <p> 819 * <b>Definition:</b> 820 * A specific type of service that may be delivered or performed 821 * </p> 822 */ 823 public java.util.List<ServiceType> getServiceType() { 824 if (myServiceType == null) { 825 myServiceType = new java.util.ArrayList<ServiceType>(); 826 } 827 return myServiceType; 828 } 829 830 /** 831 * Sets the value(s) for <b>serviceType</b> () 832 * 833 * <p> 834 * <b>Definition:</b> 835 * A specific type of service that may be delivered or performed 836 * </p> 837 */ 838 public HealthcareService setServiceType(java.util.List<ServiceType> theValue) { 839 myServiceType = theValue; 840 return this; 841 } 842 843 844 845 /** 846 * Adds and returns a new value for <b>serviceType</b> () 847 * 848 * <p> 849 * <b>Definition:</b> 850 * A specific type of service that may be delivered or performed 851 * </p> 852 */ 853 public ServiceType addServiceType() { 854 ServiceType newType = new ServiceType(); 855 getServiceType().add(newType); 856 return newType; 857 } 858 859 /** 860 * Adds a given new value for <b>serviceType</b> () 861 * 862 * <p> 863 * <b>Definition:</b> 864 * A specific type of service that may be delivered or performed 865 * </p> 866 * @param theValue The serviceType to add (must not be <code>null</code>) 867 */ 868 public HealthcareService addServiceType(ServiceType theValue) { 869 if (theValue == null) { 870 throw new NullPointerException("theValue must not be null"); 871 } 872 getServiceType().add(theValue); 873 return this; 874 } 875 876 /** 877 * Gets the first repetition for <b>serviceType</b> (), 878 * creating it if it does not already exist. 879 * 880 * <p> 881 * <b>Definition:</b> 882 * A specific type of service that may be delivered or performed 883 * </p> 884 */ 885 public ServiceType getServiceTypeFirstRep() { 886 if (getServiceType().isEmpty()) { 887 return addServiceType(); 888 } 889 return getServiceType().get(0); 890 } 891 892 /** 893 * Gets the value(s) for <b>location</b> (where). 894 * creating it if it does 895 * not exist. Will not return <code>null</code>. 896 * 897 * <p> 898 * <b>Definition:</b> 899 * The location where this healthcare service may be provided 900 * </p> 901 */ 902 public ResourceReferenceDt getLocation() { 903 if (myLocation == null) { 904 myLocation = new ResourceReferenceDt(); 905 } 906 return myLocation; 907 } 908 909 /** 910 * Sets the value(s) for <b>location</b> (where) 911 * 912 * <p> 913 * <b>Definition:</b> 914 * The location where this healthcare service may be provided 915 * </p> 916 */ 917 public HealthcareService setLocation(ResourceReferenceDt theValue) { 918 myLocation = theValue; 919 return this; 920 } 921 922 923 924 925 /** 926 * Gets the value(s) for <b>serviceName</b> (). 927 * creating it if it does 928 * not exist. Will not return <code>null</code>. 929 * 930 * <p> 931 * <b>Definition:</b> 932 * Further description of the service as it would be presented to a consumer while searching 933 * </p> 934 */ 935 public StringDt getServiceNameElement() { 936 if (myServiceName == null) { 937 myServiceName = new StringDt(); 938 } 939 return myServiceName; 940 } 941 942 943 /** 944 * Gets the value(s) for <b>serviceName</b> (). 945 * creating it if it does 946 * not exist. This method may return <code>null</code>. 947 * 948 * <p> 949 * <b>Definition:</b> 950 * Further description of the service as it would be presented to a consumer while searching 951 * </p> 952 */ 953 public String getServiceName() { 954 return getServiceNameElement().getValue(); 955 } 956 957 /** 958 * Sets the value(s) for <b>serviceName</b> () 959 * 960 * <p> 961 * <b>Definition:</b> 962 * Further description of the service as it would be presented to a consumer while searching 963 * </p> 964 */ 965 public HealthcareService setServiceName(StringDt theValue) { 966 myServiceName = theValue; 967 return this; 968 } 969 970 971 972 /** 973 * Sets the value for <b>serviceName</b> () 974 * 975 * <p> 976 * <b>Definition:</b> 977 * Further description of the service as it would be presented to a consumer while searching 978 * </p> 979 */ 980 public HealthcareService setServiceName( String theString) { 981 myServiceName = new StringDt(theString); 982 return this; 983 } 984 985 986 /** 987 * Gets the value(s) for <b>comment</b> (). 988 * creating it if it does 989 * not exist. Will not return <code>null</code>. 990 * 991 * <p> 992 * <b>Definition:</b> 993 * Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName 994 * </p> 995 */ 996 public StringDt getCommentElement() { 997 if (myComment == null) { 998 myComment = new StringDt(); 999 } 1000 return myComment; 1001 } 1002 1003 1004 /** 1005 * Gets the value(s) for <b>comment</b> (). 1006 * creating it if it does 1007 * not exist. This method may return <code>null</code>. 1008 * 1009 * <p> 1010 * <b>Definition:</b> 1011 * Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName 1012 * </p> 1013 */ 1014 public String getComment() { 1015 return getCommentElement().getValue(); 1016 } 1017 1018 /** 1019 * Sets the value(s) for <b>comment</b> () 1020 * 1021 * <p> 1022 * <b>Definition:</b> 1023 * Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName 1024 * </p> 1025 */ 1026 public HealthcareService setComment(StringDt theValue) { 1027 myComment = theValue; 1028 return this; 1029 } 1030 1031 1032 1033 /** 1034 * Sets the value for <b>comment</b> () 1035 * 1036 * <p> 1037 * <b>Definition:</b> 1038 * Any additional description of the service and/or any specific issues not covered by the other attributes, which can be displayed as further detail under the serviceName 1039 * </p> 1040 */ 1041 public HealthcareService setComment( String theString) { 1042 myComment = new StringDt(theString); 1043 return this; 1044 } 1045 1046 1047 /** 1048 * Gets the value(s) for <b>extraDetails</b> (). 1049 * creating it if it does 1050 * not exist. Will not return <code>null</code>. 1051 * 1052 * <p> 1053 * <b>Definition:</b> 1054 * Extra details about the service that can't be placed in the other fields 1055 * </p> 1056 */ 1057 public StringDt getExtraDetailsElement() { 1058 if (myExtraDetails == null) { 1059 myExtraDetails = new StringDt(); 1060 } 1061 return myExtraDetails; 1062 } 1063 1064 1065 /** 1066 * Gets the value(s) for <b>extraDetails</b> (). 1067 * creating it if it does 1068 * not exist. This method may return <code>null</code>. 1069 * 1070 * <p> 1071 * <b>Definition:</b> 1072 * Extra details about the service that can't be placed in the other fields 1073 * </p> 1074 */ 1075 public String getExtraDetails() { 1076 return getExtraDetailsElement().getValue(); 1077 } 1078 1079 /** 1080 * Sets the value(s) for <b>extraDetails</b> () 1081 * 1082 * <p> 1083 * <b>Definition:</b> 1084 * Extra details about the service that can't be placed in the other fields 1085 * </p> 1086 */ 1087 public HealthcareService setExtraDetails(StringDt theValue) { 1088 myExtraDetails = theValue; 1089 return this; 1090 } 1091 1092 1093 1094 /** 1095 * Sets the value for <b>extraDetails</b> () 1096 * 1097 * <p> 1098 * <b>Definition:</b> 1099 * Extra details about the service that can't be placed in the other fields 1100 * </p> 1101 */ 1102 public HealthcareService setExtraDetails( String theString) { 1103 myExtraDetails = new StringDt(theString); 1104 return this; 1105 } 1106 1107 1108 /** 1109 * Gets the value(s) for <b>photo</b> (). 1110 * creating it if it does 1111 * not exist. Will not return <code>null</code>. 1112 * 1113 * <p> 1114 * <b>Definition:</b> 1115 * If there is a photo/symbol associated with this HealthcareService, it may be included here to facilitate quick identification of the service in a list 1116 * </p> 1117 */ 1118 public AttachmentDt getPhoto() { 1119 if (myPhoto == null) { 1120 myPhoto = new AttachmentDt(); 1121 } 1122 return myPhoto; 1123 } 1124 1125 /** 1126 * Sets the value(s) for <b>photo</b> () 1127 * 1128 * <p> 1129 * <b>Definition:</b> 1130 * If there is a photo/symbol associated with this HealthcareService, it may be included here to facilitate quick identification of the service in a list 1131 * </p> 1132 */ 1133 public HealthcareService setPhoto(AttachmentDt theValue) { 1134 myPhoto = theValue; 1135 return this; 1136 } 1137 1138 1139 1140 1141 /** 1142 * Gets the value(s) for <b>telecom</b> (). 1143 * creating it if it does 1144 * not exist. Will not return <code>null</code>. 1145 * 1146 * <p> 1147 * <b>Definition:</b> 1148 * List of contacts related to this specific healthcare service 1149 * </p> 1150 */ 1151 public java.util.List<ContactPointDt> getTelecom() { 1152 if (myTelecom == null) { 1153 myTelecom = new java.util.ArrayList<ContactPointDt>(); 1154 } 1155 return myTelecom; 1156 } 1157 1158 /** 1159 * Sets the value(s) for <b>telecom</b> () 1160 * 1161 * <p> 1162 * <b>Definition:</b> 1163 * List of contacts related to this specific healthcare service 1164 * </p> 1165 */ 1166 public HealthcareService setTelecom(java.util.List<ContactPointDt> theValue) { 1167 myTelecom = theValue; 1168 return this; 1169 } 1170 1171 1172 1173 /** 1174 * Adds and returns a new value for <b>telecom</b> () 1175 * 1176 * <p> 1177 * <b>Definition:</b> 1178 * List of contacts related to this specific healthcare service 1179 * </p> 1180 */ 1181 public ContactPointDt addTelecom() { 1182 ContactPointDt newType = new ContactPointDt(); 1183 getTelecom().add(newType); 1184 return newType; 1185 } 1186 1187 /** 1188 * Adds a given new value for <b>telecom</b> () 1189 * 1190 * <p> 1191 * <b>Definition:</b> 1192 * List of contacts related to this specific healthcare service 1193 * </p> 1194 * @param theValue The telecom to add (must not be <code>null</code>) 1195 */ 1196 public HealthcareService addTelecom(ContactPointDt theValue) { 1197 if (theValue == null) { 1198 throw new NullPointerException("theValue must not be null"); 1199 } 1200 getTelecom().add(theValue); 1201 return this; 1202 } 1203 1204 /** 1205 * Gets the first repetition for <b>telecom</b> (), 1206 * creating it if it does not already exist. 1207 * 1208 * <p> 1209 * <b>Definition:</b> 1210 * List of contacts related to this specific healthcare service 1211 * </p> 1212 */ 1213 public ContactPointDt getTelecomFirstRep() { 1214 if (getTelecom().isEmpty()) { 1215 return addTelecom(); 1216 } 1217 return getTelecom().get(0); 1218 } 1219 1220 /** 1221 * Gets the value(s) for <b>coverageArea</b> (). 1222 * creating it if it does 1223 * not exist. Will not return <code>null</code>. 1224 * 1225 * <p> 1226 * <b>Definition:</b> 1227 * The location(s) that this service is available to (not where the service is provided) 1228 * </p> 1229 */ 1230 public java.util.List<ResourceReferenceDt> getCoverageArea() { 1231 if (myCoverageArea == null) { 1232 myCoverageArea = new java.util.ArrayList<ResourceReferenceDt>(); 1233 } 1234 return myCoverageArea; 1235 } 1236 1237 /** 1238 * Sets the value(s) for <b>coverageArea</b> () 1239 * 1240 * <p> 1241 * <b>Definition:</b> 1242 * The location(s) that this service is available to (not where the service is provided) 1243 * </p> 1244 */ 1245 public HealthcareService setCoverageArea(java.util.List<ResourceReferenceDt> theValue) { 1246 myCoverageArea = theValue; 1247 return this; 1248 } 1249 1250 1251 1252 /** 1253 * Adds and returns a new value for <b>coverageArea</b> () 1254 * 1255 * <p> 1256 * <b>Definition:</b> 1257 * The location(s) that this service is available to (not where the service is provided) 1258 * </p> 1259 */ 1260 public ResourceReferenceDt addCoverageArea() { 1261 ResourceReferenceDt newType = new ResourceReferenceDt(); 1262 getCoverageArea().add(newType); 1263 return newType; 1264 } 1265 1266 /** 1267 * Gets the value(s) for <b>serviceProvisionCode</b> (). 1268 * creating it if it does 1269 * not exist. Will not return <code>null</code>. 1270 * 1271 * <p> 1272 * <b>Definition:</b> 1273 * The code(s) that detail the conditions under which the healthcare service is available/offered 1274 * </p> 1275 */ 1276 public java.util.List<BoundCodeableConceptDt<ServiceProvisionConditionsEnum>> getServiceProvisionCode() { 1277 if (myServiceProvisionCode == null) { 1278 myServiceProvisionCode = new java.util.ArrayList<BoundCodeableConceptDt<ServiceProvisionConditionsEnum>>(); 1279 } 1280 return myServiceProvisionCode; 1281 } 1282 1283 /** 1284 * Sets the value(s) for <b>serviceProvisionCode</b> () 1285 * 1286 * <p> 1287 * <b>Definition:</b> 1288 * The code(s) that detail the conditions under which the healthcare service is available/offered 1289 * </p> 1290 */ 1291 public HealthcareService setServiceProvisionCode(java.util.List<BoundCodeableConceptDt<ServiceProvisionConditionsEnum>> theValue) { 1292 myServiceProvisionCode = theValue; 1293 return this; 1294 } 1295 1296 1297 1298 /** 1299 * Add a value for <b>serviceProvisionCode</b> () using an enumerated type. This 1300 * is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory 1301 * or contain the desirable codes. If you wish to use codes other than those which are built-in, 1302 * you may also use the {@link #addServiceProvisionCode()} method. 1303 * 1304 * <p> 1305 * <b>Definition:</b> 1306 * The code(s) that detail the conditions under which the healthcare service is available/offered 1307 * </p> 1308 */ 1309 public BoundCodeableConceptDt<ServiceProvisionConditionsEnum> addServiceProvisionCode(ServiceProvisionConditionsEnum theValue) { 1310 BoundCodeableConceptDt<ServiceProvisionConditionsEnum> retVal = new BoundCodeableConceptDt<ServiceProvisionConditionsEnum>(ServiceProvisionConditionsEnum.VALUESET_BINDER, theValue); 1311 getServiceProvisionCode().add(retVal); 1312 return retVal; 1313 } 1314 1315 /** 1316 * Gets the first repetition for <b>serviceProvisionCode</b> (), 1317 * creating it if it does not already exist. 1318 * 1319 * <p> 1320 * <b>Definition:</b> 1321 * The code(s) that detail the conditions under which the healthcare service is available/offered 1322 * </p> 1323 */ 1324 public BoundCodeableConceptDt<ServiceProvisionConditionsEnum> getServiceProvisionCodeFirstRep() { 1325 if (getServiceProvisionCode().size() == 0) { 1326 addServiceProvisionCode(); 1327 } 1328 return getServiceProvisionCode().get(0); 1329 } 1330 1331 /** 1332 * Add a value for <b>serviceProvisionCode</b> () 1333 * 1334 * <p> 1335 * <b>Definition:</b> 1336 * The code(s) that detail the conditions under which the healthcare service is available/offered 1337 * </p> 1338 */ 1339 public BoundCodeableConceptDt<ServiceProvisionConditionsEnum> addServiceProvisionCode() { 1340 BoundCodeableConceptDt<ServiceProvisionConditionsEnum> retVal = new BoundCodeableConceptDt<ServiceProvisionConditionsEnum>(ServiceProvisionConditionsEnum.VALUESET_BINDER); 1341 getServiceProvisionCode().add(retVal); 1342 return retVal; 1343 } 1344 1345 /** 1346 * Sets the value(s), and clears any existing value(s) for <b>serviceProvisionCode</b> () 1347 * 1348 * <p> 1349 * <b>Definition:</b> 1350 * The code(s) that detail the conditions under which the healthcare service is available/offered 1351 * </p> 1352 */ 1353 public HealthcareService setServiceProvisionCode(ServiceProvisionConditionsEnum theValue) { 1354 getServiceProvisionCode().clear(); 1355 addServiceProvisionCode(theValue); 1356 return this; 1357 } 1358 1359 1360 /** 1361 * Gets the value(s) for <b>eligibility</b> (). 1362 * creating it if it does 1363 * not exist. Will not return <code>null</code>. 1364 * 1365 * <p> 1366 * <b>Definition:</b> 1367 * Does this service have specific eligibility requirements that need to be met in order to use the service? 1368 * </p> 1369 */ 1370 public CodeableConceptDt getEligibility() { 1371 if (myEligibility == null) { 1372 myEligibility = new CodeableConceptDt(); 1373 } 1374 return myEligibility; 1375 } 1376 1377 /** 1378 * Sets the value(s) for <b>eligibility</b> () 1379 * 1380 * <p> 1381 * <b>Definition:</b> 1382 * Does this service have specific eligibility requirements that need to be met in order to use the service? 1383 * </p> 1384 */ 1385 public HealthcareService setEligibility(CodeableConceptDt theValue) { 1386 myEligibility = theValue; 1387 return this; 1388 } 1389 1390 1391 1392 1393 /** 1394 * Gets the value(s) for <b>eligibilityNote</b> (). 1395 * creating it if it does 1396 * not exist. Will not return <code>null</code>. 1397 * 1398 * <p> 1399 * <b>Definition:</b> 1400 * Describes the eligibility conditions for the service 1401 * </p> 1402 */ 1403 public StringDt getEligibilityNoteElement() { 1404 if (myEligibilityNote == null) { 1405 myEligibilityNote = new StringDt(); 1406 } 1407 return myEligibilityNote; 1408 } 1409 1410 1411 /** 1412 * Gets the value(s) for <b>eligibilityNote</b> (). 1413 * creating it if it does 1414 * not exist. This method may return <code>null</code>. 1415 * 1416 * <p> 1417 * <b>Definition:</b> 1418 * Describes the eligibility conditions for the service 1419 * </p> 1420 */ 1421 public String getEligibilityNote() { 1422 return getEligibilityNoteElement().getValue(); 1423 } 1424 1425 /** 1426 * Sets the value(s) for <b>eligibilityNote</b> () 1427 * 1428 * <p> 1429 * <b>Definition:</b> 1430 * Describes the eligibility conditions for the service 1431 * </p> 1432 */ 1433 public HealthcareService setEligibilityNote(StringDt theValue) { 1434 myEligibilityNote = theValue; 1435 return this; 1436 } 1437 1438 1439 1440 /** 1441 * Sets the value for <b>eligibilityNote</b> () 1442 * 1443 * <p> 1444 * <b>Definition:</b> 1445 * Describes the eligibility conditions for the service 1446 * </p> 1447 */ 1448 public HealthcareService setEligibilityNote( String theString) { 1449 myEligibilityNote = new StringDt(theString); 1450 return this; 1451 } 1452 1453 1454 /** 1455 * Gets the value(s) for <b>programName</b> (). 1456 * creating it if it does 1457 * not exist. Will not return <code>null</code>. 1458 * 1459 * <p> 1460 * <b>Definition:</b> 1461 * Program Names that can be used to categorize the service 1462 * </p> 1463 */ 1464 public java.util.List<StringDt> getProgramName() { 1465 if (myProgramName == null) { 1466 myProgramName = new java.util.ArrayList<StringDt>(); 1467 } 1468 return myProgramName; 1469 } 1470 1471 /** 1472 * Sets the value(s) for <b>programName</b> () 1473 * 1474 * <p> 1475 * <b>Definition:</b> 1476 * Program Names that can be used to categorize the service 1477 * </p> 1478 */ 1479 public HealthcareService setProgramName(java.util.List<StringDt> theValue) { 1480 myProgramName = theValue; 1481 return this; 1482 } 1483 1484 1485 1486 /** 1487 * Adds and returns a new value for <b>programName</b> () 1488 * 1489 * <p> 1490 * <b>Definition:</b> 1491 * Program Names that can be used to categorize the service 1492 * </p> 1493 */ 1494 public StringDt addProgramName() { 1495 StringDt newType = new StringDt(); 1496 getProgramName().add(newType); 1497 return newType; 1498 } 1499 1500 /** 1501 * Adds a given new value for <b>programName</b> () 1502 * 1503 * <p> 1504 * <b>Definition:</b> 1505 * Program Names that can be used to categorize the service 1506 * </p> 1507 * @param theValue The programName to add (must not be <code>null</code>) 1508 */ 1509 public HealthcareService addProgramName(StringDt theValue) { 1510 if (theValue == null) { 1511 throw new NullPointerException("theValue must not be null"); 1512 } 1513 getProgramName().add(theValue); 1514 return this; 1515 } 1516 1517 /** 1518 * Gets the first repetition for <b>programName</b> (), 1519 * creating it if it does not already exist. 1520 * 1521 * <p> 1522 * <b>Definition:</b> 1523 * Program Names that can be used to categorize the service 1524 * </p> 1525 */ 1526 public StringDt getProgramNameFirstRep() { 1527 if (getProgramName().isEmpty()) { 1528 return addProgramName(); 1529 } 1530 return getProgramName().get(0); 1531 } 1532 /** 1533 * Adds a new value for <b>programName</b> () 1534 * 1535 * <p> 1536 * <b>Definition:</b> 1537 * Program Names that can be used to categorize the service 1538 * </p> 1539 * 1540 * @return Returns a reference to this object, to allow for simple chaining. 1541 */ 1542 public HealthcareService addProgramName( String theString) { 1543 if (myProgramName == null) { 1544 myProgramName = new java.util.ArrayList<StringDt>(); 1545 } 1546 myProgramName.add(new StringDt(theString)); 1547 return this; 1548 } 1549 1550 1551 /** 1552 * Gets the value(s) for <b>characteristic</b> (). 1553 * creating it if it does 1554 * not exist. Will not return <code>null</code>. 1555 * 1556 * <p> 1557 * <b>Definition:</b> 1558 * Collection of characteristics (attributes) 1559 * </p> 1560 */ 1561 public java.util.List<CodeableConceptDt> getCharacteristic() { 1562 if (myCharacteristic == null) { 1563 myCharacteristic = new java.util.ArrayList<CodeableConceptDt>(); 1564 } 1565 return myCharacteristic; 1566 } 1567 1568 /** 1569 * Sets the value(s) for <b>characteristic</b> () 1570 * 1571 * <p> 1572 * <b>Definition:</b> 1573 * Collection of characteristics (attributes) 1574 * </p> 1575 */ 1576 public HealthcareService setCharacteristic(java.util.List<CodeableConceptDt> theValue) { 1577 myCharacteristic = theValue; 1578 return this; 1579 } 1580 1581 1582 1583 /** 1584 * Adds and returns a new value for <b>characteristic</b> () 1585 * 1586 * <p> 1587 * <b>Definition:</b> 1588 * Collection of characteristics (attributes) 1589 * </p> 1590 */ 1591 public CodeableConceptDt addCharacteristic() { 1592 CodeableConceptDt newType = new CodeableConceptDt(); 1593 getCharacteristic().add(newType); 1594 return newType; 1595 } 1596 1597 /** 1598 * Adds a given new value for <b>characteristic</b> () 1599 * 1600 * <p> 1601 * <b>Definition:</b> 1602 * Collection of characteristics (attributes) 1603 * </p> 1604 * @param theValue The characteristic to add (must not be <code>null</code>) 1605 */ 1606 public HealthcareService addCharacteristic(CodeableConceptDt theValue) { 1607 if (theValue == null) { 1608 throw new NullPointerException("theValue must not be null"); 1609 } 1610 getCharacteristic().add(theValue); 1611 return this; 1612 } 1613 1614 /** 1615 * Gets the first repetition for <b>characteristic</b> (), 1616 * creating it if it does not already exist. 1617 * 1618 * <p> 1619 * <b>Definition:</b> 1620 * Collection of characteristics (attributes) 1621 * </p> 1622 */ 1623 public CodeableConceptDt getCharacteristicFirstRep() { 1624 if (getCharacteristic().isEmpty()) { 1625 return addCharacteristic(); 1626 } 1627 return getCharacteristic().get(0); 1628 } 1629 1630 /** 1631 * Gets the value(s) for <b>referralMethod</b> (). 1632 * creating it if it does 1633 * not exist. Will not return <code>null</code>. 1634 * 1635 * <p> 1636 * <b>Definition:</b> 1637 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1638 * </p> 1639 */ 1640 public java.util.List<BoundCodeableConceptDt<ReferralMethodEnum>> getReferralMethod() { 1641 if (myReferralMethod == null) { 1642 myReferralMethod = new java.util.ArrayList<BoundCodeableConceptDt<ReferralMethodEnum>>(); 1643 } 1644 return myReferralMethod; 1645 } 1646 1647 /** 1648 * Sets the value(s) for <b>referralMethod</b> () 1649 * 1650 * <p> 1651 * <b>Definition:</b> 1652 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1653 * </p> 1654 */ 1655 public HealthcareService setReferralMethod(java.util.List<BoundCodeableConceptDt<ReferralMethodEnum>> theValue) { 1656 myReferralMethod = theValue; 1657 return this; 1658 } 1659 1660 1661 1662 /** 1663 * Add a value for <b>referralMethod</b> () using an enumerated type. This 1664 * is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory 1665 * or contain the desirable codes. If you wish to use codes other than those which are built-in, 1666 * you may also use the {@link #addReferralMethod()} method. 1667 * 1668 * <p> 1669 * <b>Definition:</b> 1670 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1671 * </p> 1672 */ 1673 public BoundCodeableConceptDt<ReferralMethodEnum> addReferralMethod(ReferralMethodEnum theValue) { 1674 BoundCodeableConceptDt<ReferralMethodEnum> retVal = new BoundCodeableConceptDt<ReferralMethodEnum>(ReferralMethodEnum.VALUESET_BINDER, theValue); 1675 getReferralMethod().add(retVal); 1676 return retVal; 1677 } 1678 1679 /** 1680 * Gets the first repetition for <b>referralMethod</b> (), 1681 * creating it if it does not already exist. 1682 * 1683 * <p> 1684 * <b>Definition:</b> 1685 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1686 * </p> 1687 */ 1688 public BoundCodeableConceptDt<ReferralMethodEnum> getReferralMethodFirstRep() { 1689 if (getReferralMethod().size() == 0) { 1690 addReferralMethod(); 1691 } 1692 return getReferralMethod().get(0); 1693 } 1694 1695 /** 1696 * Add a value for <b>referralMethod</b> () 1697 * 1698 * <p> 1699 * <b>Definition:</b> 1700 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1701 * </p> 1702 */ 1703 public BoundCodeableConceptDt<ReferralMethodEnum> addReferralMethod() { 1704 BoundCodeableConceptDt<ReferralMethodEnum> retVal = new BoundCodeableConceptDt<ReferralMethodEnum>(ReferralMethodEnum.VALUESET_BINDER); 1705 getReferralMethod().add(retVal); 1706 return retVal; 1707 } 1708 1709 /** 1710 * Sets the value(s), and clears any existing value(s) for <b>referralMethod</b> () 1711 * 1712 * <p> 1713 * <b>Definition:</b> 1714 * Ways that the service accepts referrals, if this is not provided then it is implied that no referral is required 1715 * </p> 1716 */ 1717 public HealthcareService setReferralMethod(ReferralMethodEnum theValue) { 1718 getReferralMethod().clear(); 1719 addReferralMethod(theValue); 1720 return this; 1721 } 1722 1723 1724 /** 1725 * Gets the value(s) for <b>publicKey</b> (). 1726 * creating it if it does 1727 * not exist. Will not return <code>null</code>. 1728 * 1729 * <p> 1730 * <b>Definition:</b> 1731 * The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available 1732 * </p> 1733 */ 1734 public StringDt getPublicKeyElement() { 1735 if (myPublicKey == null) { 1736 myPublicKey = new StringDt(); 1737 } 1738 return myPublicKey; 1739 } 1740 1741 1742 /** 1743 * Gets the value(s) for <b>publicKey</b> (). 1744 * creating it if it does 1745 * not exist. This method may return <code>null</code>. 1746 * 1747 * <p> 1748 * <b>Definition:</b> 1749 * The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available 1750 * </p> 1751 */ 1752 public String getPublicKey() { 1753 return getPublicKeyElement().getValue(); 1754 } 1755 1756 /** 1757 * Sets the value(s) for <b>publicKey</b> () 1758 * 1759 * <p> 1760 * <b>Definition:</b> 1761 * The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available 1762 * </p> 1763 */ 1764 public HealthcareService setPublicKey(StringDt theValue) { 1765 myPublicKey = theValue; 1766 return this; 1767 } 1768 1769 1770 1771 /** 1772 * Sets the value for <b>publicKey</b> () 1773 * 1774 * <p> 1775 * <b>Definition:</b> 1776 * The public part of the 'keys' allocated to an Organization by an accredited body to support secure exchange of data over the internet. To be provided by the Organization, where available 1777 * </p> 1778 */ 1779 public HealthcareService setPublicKey( String theString) { 1780 myPublicKey = new StringDt(theString); 1781 return this; 1782 } 1783 1784 1785 /** 1786 * Gets the value(s) for <b>appointmentRequired</b> (). 1787 * creating it if it does 1788 * not exist. Will not return <code>null</code>. 1789 * 1790 * <p> 1791 * <b>Definition:</b> 1792 * Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service. 1793 * </p> 1794 */ 1795 public BooleanDt getAppointmentRequiredElement() { 1796 if (myAppointmentRequired == null) { 1797 myAppointmentRequired = new BooleanDt(); 1798 } 1799 return myAppointmentRequired; 1800 } 1801 1802 1803 /** 1804 * Gets the value(s) for <b>appointmentRequired</b> (). 1805 * creating it if it does 1806 * not exist. This method may return <code>null</code>. 1807 * 1808 * <p> 1809 * <b>Definition:</b> 1810 * Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service. 1811 * </p> 1812 */ 1813 public Boolean getAppointmentRequired() { 1814 return getAppointmentRequiredElement().getValue(); 1815 } 1816 1817 /** 1818 * Sets the value(s) for <b>appointmentRequired</b> () 1819 * 1820 * <p> 1821 * <b>Definition:</b> 1822 * Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service. 1823 * </p> 1824 */ 1825 public HealthcareService setAppointmentRequired(BooleanDt theValue) { 1826 myAppointmentRequired = theValue; 1827 return this; 1828 } 1829 1830 1831 1832 /** 1833 * Sets the value for <b>appointmentRequired</b> () 1834 * 1835 * <p> 1836 * <b>Definition:</b> 1837 * Indicates whether or not a prospective consumer will require an appointment for a particular service at a site to be provided by the Organization. Indicates if an appointment is required for access to this service. 1838 * </p> 1839 */ 1840 public HealthcareService setAppointmentRequired( boolean theBoolean) { 1841 myAppointmentRequired = new BooleanDt(theBoolean); 1842 return this; 1843 } 1844 1845 1846 /** 1847 * Gets the value(s) for <b>availableTime</b> (). 1848 * creating it if it does 1849 * not exist. Will not return <code>null</code>. 1850 * 1851 * <p> 1852 * <b>Definition:</b> 1853 * A collection of times that the Service Site is available 1854 * </p> 1855 */ 1856 public java.util.List<AvailableTime> getAvailableTime() { 1857 if (myAvailableTime == null) { 1858 myAvailableTime = new java.util.ArrayList<AvailableTime>(); 1859 } 1860 return myAvailableTime; 1861 } 1862 1863 /** 1864 * Sets the value(s) for <b>availableTime</b> () 1865 * 1866 * <p> 1867 * <b>Definition:</b> 1868 * A collection of times that the Service Site is available 1869 * </p> 1870 */ 1871 public HealthcareService setAvailableTime(java.util.List<AvailableTime> theValue) { 1872 myAvailableTime = theValue; 1873 return this; 1874 } 1875 1876 1877 1878 /** 1879 * Adds and returns a new value for <b>availableTime</b> () 1880 * 1881 * <p> 1882 * <b>Definition:</b> 1883 * A collection of times that the Service Site is available 1884 * </p> 1885 */ 1886 public AvailableTime addAvailableTime() { 1887 AvailableTime newType = new AvailableTime(); 1888 getAvailableTime().add(newType); 1889 return newType; 1890 } 1891 1892 /** 1893 * Adds a given new value for <b>availableTime</b> () 1894 * 1895 * <p> 1896 * <b>Definition:</b> 1897 * A collection of times that the Service Site is available 1898 * </p> 1899 * @param theValue The availableTime to add (must not be <code>null</code>) 1900 */ 1901 public HealthcareService addAvailableTime(AvailableTime theValue) { 1902 if (theValue == null) { 1903 throw new NullPointerException("theValue must not be null"); 1904 } 1905 getAvailableTime().add(theValue); 1906 return this; 1907 } 1908 1909 /** 1910 * Gets the first repetition for <b>availableTime</b> (), 1911 * creating it if it does not already exist. 1912 * 1913 * <p> 1914 * <b>Definition:</b> 1915 * A collection of times that the Service Site is available 1916 * </p> 1917 */ 1918 public AvailableTime getAvailableTimeFirstRep() { 1919 if (getAvailableTime().isEmpty()) { 1920 return addAvailableTime(); 1921 } 1922 return getAvailableTime().get(0); 1923 } 1924 1925 /** 1926 * Gets the value(s) for <b>notAvailable</b> (). 1927 * creating it if it does 1928 * not exist. Will not return <code>null</code>. 1929 * 1930 * <p> 1931 * <b>Definition:</b> 1932 * The HealthcareService is not available during this period of time due to the provided reason 1933 * </p> 1934 */ 1935 public java.util.List<NotAvailable> getNotAvailable() { 1936 if (myNotAvailable == null) { 1937 myNotAvailable = new java.util.ArrayList<NotAvailable>(); 1938 } 1939 return myNotAvailable; 1940 } 1941 1942 /** 1943 * Sets the value(s) for <b>notAvailable</b> () 1944 * 1945 * <p> 1946 * <b>Definition:</b> 1947 * The HealthcareService is not available during this period of time due to the provided reason 1948 * </p> 1949 */ 1950 public HealthcareService setNotAvailable(java.util.List<NotAvailable> theValue) { 1951 myNotAvailable = theValue; 1952 return this; 1953 } 1954 1955 1956 1957 /** 1958 * Adds and returns a new value for <b>notAvailable</b> () 1959 * 1960 * <p> 1961 * <b>Definition:</b> 1962 * The HealthcareService is not available during this period of time due to the provided reason 1963 * </p> 1964 */ 1965 public NotAvailable addNotAvailable() { 1966 NotAvailable newType = new NotAvailable(); 1967 getNotAvailable().add(newType); 1968 return newType; 1969 } 1970 1971 /** 1972 * Adds a given new value for <b>notAvailable</b> () 1973 * 1974 * <p> 1975 * <b>Definition:</b> 1976 * The HealthcareService is not available during this period of time due to the provided reason 1977 * </p> 1978 * @param theValue The notAvailable to add (must not be <code>null</code>) 1979 */ 1980 public HealthcareService addNotAvailable(NotAvailable theValue) { 1981 if (theValue == null) { 1982 throw new NullPointerException("theValue must not be null"); 1983 } 1984 getNotAvailable().add(theValue); 1985 return this; 1986 } 1987 1988 /** 1989 * Gets the first repetition for <b>notAvailable</b> (), 1990 * creating it if it does not already exist. 1991 * 1992 * <p> 1993 * <b>Definition:</b> 1994 * The HealthcareService is not available during this period of time due to the provided reason 1995 * </p> 1996 */ 1997 public NotAvailable getNotAvailableFirstRep() { 1998 if (getNotAvailable().isEmpty()) { 1999 return addNotAvailable(); 2000 } 2001 return getNotAvailable().get(0); 2002 } 2003 2004 /** 2005 * Gets the value(s) for <b>availabilityExceptions</b> (). 2006 * creating it if it does 2007 * not exist. Will not return <code>null</code>. 2008 * 2009 * <p> 2010 * <b>Definition:</b> 2011 * A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times 2012 * </p> 2013 */ 2014 public StringDt getAvailabilityExceptionsElement() { 2015 if (myAvailabilityExceptions == null) { 2016 myAvailabilityExceptions = new StringDt(); 2017 } 2018 return myAvailabilityExceptions; 2019 } 2020 2021 2022 /** 2023 * Gets the value(s) for <b>availabilityExceptions</b> (). 2024 * creating it if it does 2025 * not exist. This method may return <code>null</code>. 2026 * 2027 * <p> 2028 * <b>Definition:</b> 2029 * A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times 2030 * </p> 2031 */ 2032 public String getAvailabilityExceptions() { 2033 return getAvailabilityExceptionsElement().getValue(); 2034 } 2035 2036 /** 2037 * Sets the value(s) for <b>availabilityExceptions</b> () 2038 * 2039 * <p> 2040 * <b>Definition:</b> 2041 * A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times 2042 * </p> 2043 */ 2044 public HealthcareService setAvailabilityExceptions(StringDt theValue) { 2045 myAvailabilityExceptions = theValue; 2046 return this; 2047 } 2048 2049 2050 2051 /** 2052 * Sets the value for <b>availabilityExceptions</b> () 2053 * 2054 * <p> 2055 * <b>Definition:</b> 2056 * A description of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times 2057 * </p> 2058 */ 2059 public HealthcareService setAvailabilityExceptions( String theString) { 2060 myAvailabilityExceptions = new StringDt(theString); 2061 return this; 2062 } 2063 2064 2065 /** 2066 * Block class for child element: <b>HealthcareService.serviceType</b> () 2067 * 2068 * <p> 2069 * <b>Definition:</b> 2070 * A specific type of service that may be delivered or performed 2071 * </p> 2072 */ 2073 @Block() 2074 public static class ServiceType 2075 extends BaseIdentifiableElement 2076 implements IResourceBlock { 2077 2078 @Child(name="type", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=true, modifier=false) 2079 @Description( 2080 shortDefinition="", 2081 formalDefinition="The specific type of service being delivered or performed" 2082 ) 2083 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/c80-practice-codes") 2084 private CodeableConceptDt myType; 2085 2086 @Child(name="specialty", type=CodeableConceptDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 2087 @Description( 2088 shortDefinition="", 2089 formalDefinition="Collection of specialties handled by the service site. This is more of a medical term" 2090 ) 2091 private java.util.List<CodeableConceptDt> mySpecialty; 2092 2093 2094 @Override 2095 public boolean isEmpty() { 2096 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myType, mySpecialty); 2097 } 2098 2099 @Override 2100 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2101 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myType, mySpecialty); 2102 } 2103 2104 /** 2105 * Gets the value(s) for <b>type</b> (). 2106 * creating it if it does 2107 * not exist. Will not return <code>null</code>. 2108 * 2109 * <p> 2110 * <b>Definition:</b> 2111 * The specific type of service being delivered or performed 2112 * </p> 2113 */ 2114 public CodeableConceptDt getType() { 2115 if (myType == null) { 2116 myType = new CodeableConceptDt(); 2117 } 2118 return myType; 2119 } 2120 2121 /** 2122 * Sets the value(s) for <b>type</b> () 2123 * 2124 * <p> 2125 * <b>Definition:</b> 2126 * The specific type of service being delivered or performed 2127 * </p> 2128 */ 2129 public ServiceType setType(CodeableConceptDt theValue) { 2130 myType = theValue; 2131 return this; 2132 } 2133 2134 2135 2136 2137 /** 2138 * Gets the value(s) for <b>specialty</b> (). 2139 * creating it if it does 2140 * not exist. Will not return <code>null</code>. 2141 * 2142 * <p> 2143 * <b>Definition:</b> 2144 * Collection of specialties handled by the service site. This is more of a medical term 2145 * </p> 2146 */ 2147 public java.util.List<CodeableConceptDt> getSpecialty() { 2148 if (mySpecialty == null) { 2149 mySpecialty = new java.util.ArrayList<CodeableConceptDt>(); 2150 } 2151 return mySpecialty; 2152 } 2153 2154 /** 2155 * Sets the value(s) for <b>specialty</b> () 2156 * 2157 * <p> 2158 * <b>Definition:</b> 2159 * Collection of specialties handled by the service site. This is more of a medical term 2160 * </p> 2161 */ 2162 public ServiceType setSpecialty(java.util.List<CodeableConceptDt> theValue) { 2163 mySpecialty = theValue; 2164 return this; 2165 } 2166 2167 2168 2169 /** 2170 * Adds and returns a new value for <b>specialty</b> () 2171 * 2172 * <p> 2173 * <b>Definition:</b> 2174 * Collection of specialties handled by the service site. This is more of a medical term 2175 * </p> 2176 */ 2177 public CodeableConceptDt addSpecialty() { 2178 CodeableConceptDt newType = new CodeableConceptDt(); 2179 getSpecialty().add(newType); 2180 return newType; 2181 } 2182 2183 /** 2184 * Adds a given new value for <b>specialty</b> () 2185 * 2186 * <p> 2187 * <b>Definition:</b> 2188 * Collection of specialties handled by the service site. This is more of a medical term 2189 * </p> 2190 * @param theValue The specialty to add (must not be <code>null</code>) 2191 */ 2192 public ServiceType addSpecialty(CodeableConceptDt theValue) { 2193 if (theValue == null) { 2194 throw new NullPointerException("theValue must not be null"); 2195 } 2196 getSpecialty().add(theValue); 2197 return this; 2198 } 2199 2200 /** 2201 * Gets the first repetition for <b>specialty</b> (), 2202 * creating it if it does not already exist. 2203 * 2204 * <p> 2205 * <b>Definition:</b> 2206 * Collection of specialties handled by the service site. This is more of a medical term 2207 * </p> 2208 */ 2209 public CodeableConceptDt getSpecialtyFirstRep() { 2210 if (getSpecialty().isEmpty()) { 2211 return addSpecialty(); 2212 } 2213 return getSpecialty().get(0); 2214 } 2215 2216 2217 2218 } 2219 2220 2221 /** 2222 * Block class for child element: <b>HealthcareService.availableTime</b> () 2223 * 2224 * <p> 2225 * <b>Definition:</b> 2226 * A collection of times that the Service Site is available 2227 * </p> 2228 */ 2229 @Block() 2230 public static class AvailableTime 2231 extends BaseIdentifiableElement 2232 implements IResourceBlock { 2233 2234 @Child(name="daysOfWeek", type=CodeDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2235 @Description( 2236 shortDefinition="", 2237 formalDefinition="Indicates which days of the week are available between the start and end Times" 2238 ) 2239 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/days-of-week") 2240 private java.util.List<BoundCodeDt<DaysOfWeekEnum>> myDaysOfWeek; 2241 2242 @Child(name="allDay", type=BooleanDt.class, order=1, min=0, max=1, summary=false, modifier=false) 2243 @Description( 2244 shortDefinition="", 2245 formalDefinition="Is this always available? (hence times are irrelevant) e.g. 24 hour service" 2246 ) 2247 private BooleanDt myAllDay; 2248 2249 @Child(name="availableStartTime", type=TimeDt.class, order=2, min=0, max=1, summary=false, modifier=false) 2250 @Description( 2251 shortDefinition="", 2252 formalDefinition="The opening time of day. Note: If the AllDay flag is set, then this time is ignored" 2253 ) 2254 private TimeDt myAvailableStartTime; 2255 2256 @Child(name="availableEndTime", type=TimeDt.class, order=3, min=0, max=1, summary=false, modifier=false) 2257 @Description( 2258 shortDefinition="", 2259 formalDefinition="The closing time of day. Note: If the AllDay flag is set, then this time is ignored" 2260 ) 2261 private TimeDt myAvailableEndTime; 2262 2263 2264 @Override 2265 public boolean isEmpty() { 2266 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myDaysOfWeek, myAllDay, myAvailableStartTime, myAvailableEndTime); 2267 } 2268 2269 @Override 2270 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2271 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myDaysOfWeek, myAllDay, myAvailableStartTime, myAvailableEndTime); 2272 } 2273 2274 /** 2275 * Gets the value(s) for <b>daysOfWeek</b> (). 2276 * creating it if it does 2277 * not exist. Will not return <code>null</code>. 2278 * 2279 * <p> 2280 * <b>Definition:</b> 2281 * Indicates which days of the week are available between the start and end Times 2282 * </p> 2283 */ 2284 public java.util.List<BoundCodeDt<DaysOfWeekEnum>> getDaysOfWeek() { 2285 if (myDaysOfWeek == null) { 2286 myDaysOfWeek = new java.util.ArrayList<BoundCodeDt<DaysOfWeekEnum>>(); 2287 } 2288 return myDaysOfWeek; 2289 } 2290 2291 /** 2292 * Sets the value(s) for <b>daysOfWeek</b> () 2293 * 2294 * <p> 2295 * <b>Definition:</b> 2296 * Indicates which days of the week are available between the start and end Times 2297 * </p> 2298 */ 2299 public AvailableTime setDaysOfWeek(java.util.List<BoundCodeDt<DaysOfWeekEnum>> theValue) { 2300 myDaysOfWeek = theValue; 2301 return this; 2302 } 2303 2304 2305 2306 /** 2307 * Add a value for <b>daysOfWeek</b> () using an enumerated type. This 2308 * is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory 2309 * or contain the desirable codes. If you wish to use codes other than those which are built-in, 2310 * you may also use the {@link #addDaysOfWeek()} method. 2311 * 2312 * <p> 2313 * <b>Definition:</b> 2314 * Indicates which days of the week are available between the start and end Times 2315 * </p> 2316 */ 2317 public BoundCodeDt<DaysOfWeekEnum> addDaysOfWeek(DaysOfWeekEnum theValue) { 2318 BoundCodeDt<DaysOfWeekEnum> retVal = new BoundCodeDt<DaysOfWeekEnum>(DaysOfWeekEnum.VALUESET_BINDER, theValue); 2319 getDaysOfWeek().add(retVal); 2320 return retVal; 2321 } 2322 2323 /** 2324 * Gets the first repetition for <b>daysOfWeek</b> (), 2325 * creating it if it does not already exist. 2326 * 2327 * <p> 2328 * <b>Definition:</b> 2329 * Indicates which days of the week are available between the start and end Times 2330 * </p> 2331 */ 2332 public BoundCodeDt<DaysOfWeekEnum> getDaysOfWeekFirstRep() { 2333 if (getDaysOfWeek().size() == 0) { 2334 addDaysOfWeek(); 2335 } 2336 return getDaysOfWeek().get(0); 2337 } 2338 2339 /** 2340 * Add a value for <b>daysOfWeek</b> () 2341 * 2342 * <p> 2343 * <b>Definition:</b> 2344 * Indicates which days of the week are available between the start and end Times 2345 * </p> 2346 */ 2347 public BoundCodeDt<DaysOfWeekEnum> addDaysOfWeek() { 2348 BoundCodeDt<DaysOfWeekEnum> retVal = new BoundCodeDt<DaysOfWeekEnum>(DaysOfWeekEnum.VALUESET_BINDER); 2349 getDaysOfWeek().add(retVal); 2350 return retVal; 2351 } 2352 2353 /** 2354 * Sets the value(s), and clears any existing value(s) for <b>daysOfWeek</b> () 2355 * 2356 * <p> 2357 * <b>Definition:</b> 2358 * Indicates which days of the week are available between the start and end Times 2359 * </p> 2360 */ 2361 public AvailableTime setDaysOfWeek(DaysOfWeekEnum theValue) { 2362 getDaysOfWeek().clear(); 2363 addDaysOfWeek(theValue); 2364 return this; 2365 } 2366 2367 2368 /** 2369 * Gets the value(s) for <b>allDay</b> (). 2370 * creating it if it does 2371 * not exist. Will not return <code>null</code>. 2372 * 2373 * <p> 2374 * <b>Definition:</b> 2375 * Is this always available? (hence times are irrelevant) e.g. 24 hour service 2376 * </p> 2377 */ 2378 public BooleanDt getAllDayElement() { 2379 if (myAllDay == null) { 2380 myAllDay = new BooleanDt(); 2381 } 2382 return myAllDay; 2383 } 2384 2385 2386 /** 2387 * Gets the value(s) for <b>allDay</b> (). 2388 * creating it if it does 2389 * not exist. This method may return <code>null</code>. 2390 * 2391 * <p> 2392 * <b>Definition:</b> 2393 * Is this always available? (hence times are irrelevant) e.g. 24 hour service 2394 * </p> 2395 */ 2396 public Boolean getAllDay() { 2397 return getAllDayElement().getValue(); 2398 } 2399 2400 /** 2401 * Sets the value(s) for <b>allDay</b> () 2402 * 2403 * <p> 2404 * <b>Definition:</b> 2405 * Is this always available? (hence times are irrelevant) e.g. 24 hour service 2406 * </p> 2407 */ 2408 public AvailableTime setAllDay(BooleanDt theValue) { 2409 myAllDay = theValue; 2410 return this; 2411 } 2412 2413 2414 2415 /** 2416 * Sets the value for <b>allDay</b> () 2417 * 2418 * <p> 2419 * <b>Definition:</b> 2420 * Is this always available? (hence times are irrelevant) e.g. 24 hour service 2421 * </p> 2422 */ 2423 public AvailableTime setAllDay( boolean theBoolean) { 2424 myAllDay = new BooleanDt(theBoolean); 2425 return this; 2426 } 2427 2428 2429 /** 2430 * Gets the value(s) for <b>availableStartTime</b> (). 2431 * creating it if it does 2432 * not exist. Will not return <code>null</code>. 2433 * 2434 * <p> 2435 * <b>Definition:</b> 2436 * The opening time of day. Note: If the AllDay flag is set, then this time is ignored 2437 * </p> 2438 */ 2439 public TimeDt getAvailableStartTimeElement() { 2440 if (myAvailableStartTime == null) { 2441 myAvailableStartTime = new TimeDt(); 2442 } 2443 return myAvailableStartTime; 2444 } 2445 2446 2447 /** 2448 * Gets the value(s) for <b>availableStartTime</b> (). 2449 * creating it if it does 2450 * not exist. This method may return <code>null</code>. 2451 * 2452 * <p> 2453 * <b>Definition:</b> 2454 * The opening time of day. Note: If the AllDay flag is set, then this time is ignored 2455 * </p> 2456 */ 2457 public String getAvailableStartTime() { 2458 return getAvailableStartTimeElement().getValue(); 2459 } 2460 2461 /** 2462 * Sets the value(s) for <b>availableStartTime</b> () 2463 * 2464 * <p> 2465 * <b>Definition:</b> 2466 * The opening time of day. Note: If the AllDay flag is set, then this time is ignored 2467 * </p> 2468 */ 2469 public AvailableTime setAvailableStartTime(TimeDt theValue) { 2470 myAvailableStartTime = theValue; 2471 return this; 2472 } 2473 2474 2475 2476 /** 2477 * Sets the value for <b>availableStartTime</b> () 2478 * 2479 * <p> 2480 * <b>Definition:</b> 2481 * The opening time of day. Note: If the AllDay flag is set, then this time is ignored 2482 * </p> 2483 */ 2484 public AvailableTime setAvailableStartTime( String theString) { 2485 myAvailableStartTime = new TimeDt(theString); 2486 return this; 2487 } 2488 2489 2490 /** 2491 * Gets the value(s) for <b>availableEndTime</b> (). 2492 * creating it if it does 2493 * not exist. Will not return <code>null</code>. 2494 * 2495 * <p> 2496 * <b>Definition:</b> 2497 * The closing time of day. Note: If the AllDay flag is set, then this time is ignored 2498 * </p> 2499 */ 2500 public TimeDt getAvailableEndTimeElement() { 2501 if (myAvailableEndTime == null) { 2502 myAvailableEndTime = new TimeDt(); 2503 } 2504 return myAvailableEndTime; 2505 } 2506 2507 2508 /** 2509 * Gets the value(s) for <b>availableEndTime</b> (). 2510 * creating it if it does 2511 * not exist. This method may return <code>null</code>. 2512 * 2513 * <p> 2514 * <b>Definition:</b> 2515 * The closing time of day. Note: If the AllDay flag is set, then this time is ignored 2516 * </p> 2517 */ 2518 public String getAvailableEndTime() { 2519 return getAvailableEndTimeElement().getValue(); 2520 } 2521 2522 /** 2523 * Sets the value(s) for <b>availableEndTime</b> () 2524 * 2525 * <p> 2526 * <b>Definition:</b> 2527 * The closing time of day. Note: If the AllDay flag is set, then this time is ignored 2528 * </p> 2529 */ 2530 public AvailableTime setAvailableEndTime(TimeDt theValue) { 2531 myAvailableEndTime = theValue; 2532 return this; 2533 } 2534 2535 2536 2537 /** 2538 * Sets the value for <b>availableEndTime</b> () 2539 * 2540 * <p> 2541 * <b>Definition:</b> 2542 * The closing time of day. Note: If the AllDay flag is set, then this time is ignored 2543 * </p> 2544 */ 2545 public AvailableTime setAvailableEndTime( String theString) { 2546 myAvailableEndTime = new TimeDt(theString); 2547 return this; 2548 } 2549 2550 2551 2552 2553 } 2554 2555 2556 /** 2557 * Block class for child element: <b>HealthcareService.notAvailable</b> () 2558 * 2559 * <p> 2560 * <b>Definition:</b> 2561 * The HealthcareService is not available during this period of time due to the provided reason 2562 * </p> 2563 */ 2564 @Block() 2565 public static class NotAvailable 2566 extends BaseIdentifiableElement 2567 implements IResourceBlock { 2568 2569 @Child(name="description", type=StringDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2570 @Description( 2571 shortDefinition="", 2572 formalDefinition="The reason that can be presented to the user as to why this time is not available" 2573 ) 2574 private StringDt myDescription; 2575 2576 @Child(name="during", type=PeriodDt.class, order=1, min=0, max=1, summary=false, modifier=false) 2577 @Description( 2578 shortDefinition="", 2579 formalDefinition="Service is not available (seasonally or for a public holiday) from this date" 2580 ) 2581 private PeriodDt myDuring; 2582 2583 2584 @Override 2585 public boolean isEmpty() { 2586 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myDescription, myDuring); 2587 } 2588 2589 @Override 2590 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2591 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myDescription, myDuring); 2592 } 2593 2594 /** 2595 * Gets the value(s) for <b>description</b> (). 2596 * creating it if it does 2597 * not exist. Will not return <code>null</code>. 2598 * 2599 * <p> 2600 * <b>Definition:</b> 2601 * The reason that can be presented to the user as to why this time is not available 2602 * </p> 2603 */ 2604 public StringDt getDescriptionElement() { 2605 if (myDescription == null) { 2606 myDescription = new StringDt(); 2607 } 2608 return myDescription; 2609 } 2610 2611 2612 /** 2613 * Gets the value(s) for <b>description</b> (). 2614 * creating it if it does 2615 * not exist. This method may return <code>null</code>. 2616 * 2617 * <p> 2618 * <b>Definition:</b> 2619 * The reason that can be presented to the user as to why this time is not available 2620 * </p> 2621 */ 2622 public String getDescription() { 2623 return getDescriptionElement().getValue(); 2624 } 2625 2626 /** 2627 * Sets the value(s) for <b>description</b> () 2628 * 2629 * <p> 2630 * <b>Definition:</b> 2631 * The reason that can be presented to the user as to why this time is not available 2632 * </p> 2633 */ 2634 public NotAvailable setDescription(StringDt theValue) { 2635 myDescription = theValue; 2636 return this; 2637 } 2638 2639 2640 2641 /** 2642 * Sets the value for <b>description</b> () 2643 * 2644 * <p> 2645 * <b>Definition:</b> 2646 * The reason that can be presented to the user as to why this time is not available 2647 * </p> 2648 */ 2649 public NotAvailable setDescription( String theString) { 2650 myDescription = new StringDt(theString); 2651 return this; 2652 } 2653 2654 2655 /** 2656 * Gets the value(s) for <b>during</b> (). 2657 * creating it if it does 2658 * not exist. Will not return <code>null</code>. 2659 * 2660 * <p> 2661 * <b>Definition:</b> 2662 * Service is not available (seasonally or for a public holiday) from this date 2663 * </p> 2664 */ 2665 public PeriodDt getDuring() { 2666 if (myDuring == null) { 2667 myDuring = new PeriodDt(); 2668 } 2669 return myDuring; 2670 } 2671 2672 /** 2673 * Sets the value(s) for <b>during</b> () 2674 * 2675 * <p> 2676 * <b>Definition:</b> 2677 * Service is not available (seasonally or for a public holiday) from this date 2678 * </p> 2679 */ 2680 public NotAvailable setDuring(PeriodDt theValue) { 2681 myDuring = theValue; 2682 return this; 2683 } 2684 2685 2686 2687 2688 2689 2690 } 2691 2692 2693 2694 2695 @Override 2696 public String getResourceName() { 2697 return "HealthcareService"; 2698 } 2699 2700 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2701 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2702 } 2703 2704 2705}