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>RelatedPerson</b> Resource 282 * (administrative.individual) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process. 287 * </p> 288 * 289 * <p> 290 * <b>Requirements:</b> 291 * Need to track persons related to the patient or the healthcare process. 292 * </p> 293 * 294 * <p> 295 * <b>Profile Definition:</b> 296 * <a href="http://hl7.org/fhir/profiles/RelatedPerson">http://hl7.org/fhir/profiles/RelatedPerson</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="RelatedPerson", profile="http://hl7.org/fhir/profiles/RelatedPerson", id="relatedperson") 301public class RelatedPerson 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>A patient Identifier</b><br> 309 * Type: <b>token</b><br> 310 * Path: <b>RelatedPerson.identifier</b><br> 311 * </p> 312 */ 313 @SearchParamDefinition(name="identifier", path="RelatedPerson.identifier", description="A patient Identifier", 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>A patient Identifier</b><br> 321 * Type: <b>token</b><br> 322 * Path: <b>RelatedPerson.identifier</b><br> 323 * </p> 324 */ 325 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 326 327 /** 328 * Search parameter constant for <b>name</b> 329 * <p> 330 * Description: <b>A portion of name in any name part</b><br> 331 * Type: <b>string</b><br> 332 * Path: <b>RelatedPerson.name</b><br> 333 * </p> 334 */ 335 @SearchParamDefinition(name="name", path="RelatedPerson.name", description="A portion of name in any name part", type="string" 336 ) 337 public static final String SP_NAME = "name"; 338 339 /** 340 * <b>Fluent Client</b> search parameter constant for <b>name</b> 341 * <p> 342 * Description: <b>A portion of name in any name part</b><br> 343 * Type: <b>string</b><br> 344 * Path: <b>RelatedPerson.name</b><br> 345 * </p> 346 */ 347 public static final StringClientParam NAME = new StringClientParam(SP_NAME); 348 349 /** 350 * Search parameter constant for <b>phonetic</b> 351 * <p> 352 * Description: <b>A portion of name using some kind of phonetic matching algorithm</b><br> 353 * Type: <b>string</b><br> 354 * Path: <b>RelatedPerson.name</b><br> 355 * </p> 356 */ 357 @SearchParamDefinition(name="phonetic", path="RelatedPerson.name", description="A portion of name using some kind of phonetic matching algorithm", type="string" 358 ) 359 public static final String SP_PHONETIC = "phonetic"; 360 361 /** 362 * <b>Fluent Client</b> search parameter constant for <b>phonetic</b> 363 * <p> 364 * Description: <b>A portion of name using some kind of phonetic matching algorithm</b><br> 365 * Type: <b>string</b><br> 366 * Path: <b>RelatedPerson.name</b><br> 367 * </p> 368 */ 369 public static final StringClientParam PHONETIC = new StringClientParam(SP_PHONETIC); 370 371 /** 372 * Search parameter constant for <b>telecom</b> 373 * <p> 374 * Description: <b>The value in any kind of contact</b><br> 375 * Type: <b>token</b><br> 376 * Path: <b>RelatedPerson.telecom</b><br> 377 * </p> 378 */ 379 @SearchParamDefinition(name="telecom", path="RelatedPerson.telecom", description="The value in any kind of contact", type="token" 380 ) 381 public static final String SP_TELECOM = "telecom"; 382 383 /** 384 * <b>Fluent Client</b> search parameter constant for <b>telecom</b> 385 * <p> 386 * Description: <b>The value in any kind of contact</b><br> 387 * Type: <b>token</b><br> 388 * Path: <b>RelatedPerson.telecom</b><br> 389 * </p> 390 */ 391 public static final TokenClientParam TELECOM = new TokenClientParam(SP_TELECOM); 392 393 /** 394 * Search parameter constant for <b>phone</b> 395 * <p> 396 * Description: <b>A value in a phone contact</b><br> 397 * Type: <b>token</b><br> 398 * Path: <b>RelatedPerson.telecom(system=phone)</b><br> 399 * </p> 400 */ 401 @SearchParamDefinition(name="phone", path="RelatedPerson.telecom(system=phone)", description="A value in a phone contact", type="token" 402 ) 403 public static final String SP_PHONE = "phone"; 404 405 /** 406 * <b>Fluent Client</b> search parameter constant for <b>phone</b> 407 * <p> 408 * Description: <b>A value in a phone contact</b><br> 409 * Type: <b>token</b><br> 410 * Path: <b>RelatedPerson.telecom(system=phone)</b><br> 411 * </p> 412 */ 413 public static final TokenClientParam PHONE = new TokenClientParam(SP_PHONE); 414 415 /** 416 * Search parameter constant for <b>email</b> 417 * <p> 418 * Description: <b>A value in an email contact</b><br> 419 * Type: <b>token</b><br> 420 * Path: <b>RelatedPerson.telecom(system=email)</b><br> 421 * </p> 422 */ 423 @SearchParamDefinition(name="email", path="RelatedPerson.telecom(system=email)", description="A value in an email contact", type="token" 424 ) 425 public static final String SP_EMAIL = "email"; 426 427 /** 428 * <b>Fluent Client</b> search parameter constant for <b>email</b> 429 * <p> 430 * Description: <b>A value in an email contact</b><br> 431 * Type: <b>token</b><br> 432 * Path: <b>RelatedPerson.telecom(system=email)</b><br> 433 * </p> 434 */ 435 public static final TokenClientParam EMAIL = new TokenClientParam(SP_EMAIL); 436 437 /** 438 * Search parameter constant for <b>address</b> 439 * <p> 440 * Description: <b>An address in any kind of address/part</b><br> 441 * Type: <b>string</b><br> 442 * Path: <b>RelatedPerson.address</b><br> 443 * </p> 444 */ 445 @SearchParamDefinition(name="address", path="RelatedPerson.address", description="An address in any kind of address/part", type="string" 446 ) 447 public static final String SP_ADDRESS = "address"; 448 449 /** 450 * <b>Fluent Client</b> search parameter constant for <b>address</b> 451 * <p> 452 * Description: <b>An address in any kind of address/part</b><br> 453 * Type: <b>string</b><br> 454 * Path: <b>RelatedPerson.address</b><br> 455 * </p> 456 */ 457 public static final StringClientParam ADDRESS = new StringClientParam(SP_ADDRESS); 458 459 /** 460 * Search parameter constant for <b>address-city</b> 461 * <p> 462 * Description: <b>A city specified in an address</b><br> 463 * Type: <b>string</b><br> 464 * Path: <b>RelatedPerson.address.city</b><br> 465 * </p> 466 */ 467 @SearchParamDefinition(name="address-city", path="RelatedPerson.address.city", description="A city specified in an address", type="string" 468 ) 469 public static final String SP_ADDRESS_CITY = "address-city"; 470 471 /** 472 * <b>Fluent Client</b> search parameter constant for <b>address-city</b> 473 * <p> 474 * Description: <b>A city specified in an address</b><br> 475 * Type: <b>string</b><br> 476 * Path: <b>RelatedPerson.address.city</b><br> 477 * </p> 478 */ 479 public static final StringClientParam ADDRESS_CITY = new StringClientParam(SP_ADDRESS_CITY); 480 481 /** 482 * Search parameter constant for <b>address-state</b> 483 * <p> 484 * Description: <b>A state specified in an address</b><br> 485 * Type: <b>string</b><br> 486 * Path: <b>RelatedPerson.address.state</b><br> 487 * </p> 488 */ 489 @SearchParamDefinition(name="address-state", path="RelatedPerson.address.state", description="A state specified in an address", type="string" 490 ) 491 public static final String SP_ADDRESS_STATE = "address-state"; 492 493 /** 494 * <b>Fluent Client</b> search parameter constant for <b>address-state</b> 495 * <p> 496 * Description: <b>A state specified in an address</b><br> 497 * Type: <b>string</b><br> 498 * Path: <b>RelatedPerson.address.state</b><br> 499 * </p> 500 */ 501 public static final StringClientParam ADDRESS_STATE = new StringClientParam(SP_ADDRESS_STATE); 502 503 /** 504 * Search parameter constant for <b>address-postalcode</b> 505 * <p> 506 * Description: <b>A postal code specified in an address</b><br> 507 * Type: <b>string</b><br> 508 * Path: <b>RelatedPerson.address.postalCode</b><br> 509 * </p> 510 */ 511 @SearchParamDefinition(name="address-postalcode", path="RelatedPerson.address.postalCode", description="A postal code specified in an address", type="string" 512 ) 513 public static final String SP_ADDRESS_POSTALCODE = "address-postalcode"; 514 515 /** 516 * <b>Fluent Client</b> search parameter constant for <b>address-postalcode</b> 517 * <p> 518 * Description: <b>A postal code specified in an address</b><br> 519 * Type: <b>string</b><br> 520 * Path: <b>RelatedPerson.address.postalCode</b><br> 521 * </p> 522 */ 523 public static final StringClientParam ADDRESS_POSTALCODE = new StringClientParam(SP_ADDRESS_POSTALCODE); 524 525 /** 526 * Search parameter constant for <b>address-country</b> 527 * <p> 528 * Description: <b>A country specified in an address</b><br> 529 * Type: <b>string</b><br> 530 * Path: <b>RelatedPerson.address.country</b><br> 531 * </p> 532 */ 533 @SearchParamDefinition(name="address-country", path="RelatedPerson.address.country", description="A country specified in an address", type="string" 534 ) 535 public static final String SP_ADDRESS_COUNTRY = "address-country"; 536 537 /** 538 * <b>Fluent Client</b> search parameter constant for <b>address-country</b> 539 * <p> 540 * Description: <b>A country specified in an address</b><br> 541 * Type: <b>string</b><br> 542 * Path: <b>RelatedPerson.address.country</b><br> 543 * </p> 544 */ 545 public static final StringClientParam ADDRESS_COUNTRY = new StringClientParam(SP_ADDRESS_COUNTRY); 546 547 /** 548 * Search parameter constant for <b>address-use</b> 549 * <p> 550 * Description: <b>A use code specified in an address</b><br> 551 * Type: <b>token</b><br> 552 * Path: <b>RelatedPerson.address.use</b><br> 553 * </p> 554 */ 555 @SearchParamDefinition(name="address-use", path="RelatedPerson.address.use", description="A use code specified in an address", type="token" 556 ) 557 public static final String SP_ADDRESS_USE = "address-use"; 558 559 /** 560 * <b>Fluent Client</b> search parameter constant for <b>address-use</b> 561 * <p> 562 * Description: <b>A use code specified in an address</b><br> 563 * Type: <b>token</b><br> 564 * Path: <b>RelatedPerson.address.use</b><br> 565 * </p> 566 */ 567 public static final TokenClientParam ADDRESS_USE = new TokenClientParam(SP_ADDRESS_USE); 568 569 /** 570 * Search parameter constant for <b>birthdate</b> 571 * <p> 572 * Description: <b>The Related Person's date of birth</b><br> 573 * Type: <b>date</b><br> 574 * Path: <b>RelatedPerson.birthDate</b><br> 575 * </p> 576 */ 577 @SearchParamDefinition(name="birthdate", path="RelatedPerson.birthDate", description="The Related Person's date of birth", type="date" 578 ) 579 public static final String SP_BIRTHDATE = "birthdate"; 580 581 /** 582 * <b>Fluent Client</b> search parameter constant for <b>birthdate</b> 583 * <p> 584 * Description: <b>The Related Person's date of birth</b><br> 585 * Type: <b>date</b><br> 586 * Path: <b>RelatedPerson.birthDate</b><br> 587 * </p> 588 */ 589 public static final DateClientParam BIRTHDATE = new DateClientParam(SP_BIRTHDATE); 590 591 /** 592 * Search parameter constant for <b>gender</b> 593 * <p> 594 * Description: <b>Gender of the person</b><br> 595 * Type: <b>token</b><br> 596 * Path: <b>RelatedPerson.gender</b><br> 597 * </p> 598 */ 599 @SearchParamDefinition(name="gender", path="RelatedPerson.gender", description="Gender of the person", type="token" 600 ) 601 public static final String SP_GENDER = "gender"; 602 603 /** 604 * <b>Fluent Client</b> search parameter constant for <b>gender</b> 605 * <p> 606 * Description: <b>Gender of the person</b><br> 607 * Type: <b>token</b><br> 608 * Path: <b>RelatedPerson.gender</b><br> 609 * </p> 610 */ 611 public static final TokenClientParam GENDER = new TokenClientParam(SP_GENDER); 612 613 /** 614 * Search parameter constant for <b>patient</b> 615 * <p> 616 * Description: <b>The patient this person is related to</b><br> 617 * Type: <b>reference</b><br> 618 * Path: <b>RelatedPerson.patient</b><br> 619 * </p> 620 */ 621 @SearchParamDefinition(name="patient", path="RelatedPerson.patient", description="The patient this person is related to", type="reference" 622, providesMembershipIn={ 623 @Compartment(name="Patient") } 624 ) 625 public static final String SP_PATIENT = "patient"; 626 627 /** 628 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 629 * <p> 630 * Description: <b>The patient this person is related to</b><br> 631 * Type: <b>reference</b><br> 632 * Path: <b>RelatedPerson.patient</b><br> 633 * </p> 634 */ 635 public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT); 636 637 638 /** 639 * Constant for fluent queries to be used to add include statements. Specifies 640 * the path value of "<b>RelatedPerson:patient</b>". 641 */ 642 public static final Include INCLUDE_PATIENT = new Include("RelatedPerson:patient"); 643 644 645 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 646 @Description( 647 shortDefinition="id", 648 formalDefinition="Identifier for a person within a particular scope." 649 ) 650 private java.util.List<IdentifierDt> myIdentifier; 651 652 @Child(name="patient", order=1, min=1, max=1, summary=true, modifier=false, type={ 653 ca.uhn.fhir.model.dstu2.resource.Patient.class 654 }) 655 @Description( 656 shortDefinition="", 657 formalDefinition="The patient this person is related to" 658 ) 659 private ResourceReferenceDt myPatient; 660 661 @Child(name="relationship", type=CodeableConceptDt.class, order=2, min=0, max=1, summary=true, modifier=false) 662 @Description( 663 shortDefinition="class", 664 formalDefinition="The nature of the relationship between a patient and the related person" 665 ) 666 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-relatedperson-relationshiptype") 667 private CodeableConceptDt myRelationship; 668 669 @Child(name="name", type=HumanNameDt.class, order=3, min=0, max=1, summary=true, modifier=false) 670 @Description( 671 shortDefinition="", 672 formalDefinition="A name associated with the person" 673 ) 674 private HumanNameDt myName; 675 676 @Child(name="telecom", type=ContactPointDt.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 677 @Description( 678 shortDefinition="", 679 formalDefinition="A contact detail for the person, e.g. a telephone number or an email address." 680 ) 681 private java.util.List<ContactPointDt> myTelecom; 682 683 @Child(name="gender", type=CodeDt.class, order=5, min=0, max=1, summary=true, modifier=false) 684 @Description( 685 shortDefinition="", 686 formalDefinition="Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes." 687 ) 688 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/administrative-gender") 689 private BoundCodeDt<AdministrativeGenderEnum> myGender; 690 691 @Child(name="birthDate", type=DateDt.class, order=6, min=0, max=1, summary=true, modifier=false) 692 @Description( 693 shortDefinition="", 694 formalDefinition="" 695 ) 696 private DateDt myBirthDate; 697 698 @Child(name="address", type=AddressDt.class, order=7, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 699 @Description( 700 shortDefinition="", 701 formalDefinition="Address where the related person can be contacted or visited" 702 ) 703 private java.util.List<AddressDt> myAddress; 704 705 @Child(name="photo", type=AttachmentDt.class, order=8, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 706 @Description( 707 shortDefinition="", 708 formalDefinition="Image of the person" 709 ) 710 private java.util.List<AttachmentDt> myPhoto; 711 712 @Child(name="period", type=PeriodDt.class, order=9, min=0, max=1, summary=false, modifier=false) 713 @Description( 714 shortDefinition="when.done", 715 formalDefinition="The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown." 716 ) 717 private PeriodDt myPeriod; 718 719 720 @Override 721 public boolean isEmpty() { 722 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myPatient, myRelationship, myName, myTelecom, myGender, myBirthDate, myAddress, myPhoto, myPeriod); 723 } 724 725 @Override 726 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 727 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myPatient, myRelationship, myName, myTelecom, myGender, myBirthDate, myAddress, myPhoto, myPeriod); 728 } 729 730 /** 731 * Gets the value(s) for <b>identifier</b> (id). 732 * creating it if it does 733 * not exist. Will not return <code>null</code>. 734 * 735 * <p> 736 * <b>Definition:</b> 737 * Identifier for a person within a particular scope. 738 * </p> 739 */ 740 public java.util.List<IdentifierDt> getIdentifier() { 741 if (myIdentifier == null) { 742 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 743 } 744 return myIdentifier; 745 } 746 747 /** 748 * Sets the value(s) for <b>identifier</b> (id) 749 * 750 * <p> 751 * <b>Definition:</b> 752 * Identifier for a person within a particular scope. 753 * </p> 754 */ 755 public RelatedPerson setIdentifier(java.util.List<IdentifierDt> theValue) { 756 myIdentifier = theValue; 757 return this; 758 } 759 760 761 762 /** 763 * Adds and returns a new value for <b>identifier</b> (id) 764 * 765 * <p> 766 * <b>Definition:</b> 767 * Identifier for a person within a particular scope. 768 * </p> 769 */ 770 public IdentifierDt addIdentifier() { 771 IdentifierDt newType = new IdentifierDt(); 772 getIdentifier().add(newType); 773 return newType; 774 } 775 776 /** 777 * Adds a given new value for <b>identifier</b> (id) 778 * 779 * <p> 780 * <b>Definition:</b> 781 * Identifier for a person within a particular scope. 782 * </p> 783 * @param theValue The identifier to add (must not be <code>null</code>) 784 */ 785 public RelatedPerson addIdentifier(IdentifierDt theValue) { 786 if (theValue == null) { 787 throw new NullPointerException("theValue must not be null"); 788 } 789 getIdentifier().add(theValue); 790 return this; 791 } 792 793 /** 794 * Gets the first repetition for <b>identifier</b> (id), 795 * creating it if it does not already exist. 796 * 797 * <p> 798 * <b>Definition:</b> 799 * Identifier for a person within a particular scope. 800 * </p> 801 */ 802 public IdentifierDt getIdentifierFirstRep() { 803 if (getIdentifier().isEmpty()) { 804 return addIdentifier(); 805 } 806 return getIdentifier().get(0); 807 } 808 809 /** 810 * Gets the value(s) for <b>patient</b> (). 811 * creating it if it does 812 * not exist. Will not return <code>null</code>. 813 * 814 * <p> 815 * <b>Definition:</b> 816 * The patient this person is related to 817 * </p> 818 */ 819 public ResourceReferenceDt getPatient() { 820 if (myPatient == null) { 821 myPatient = new ResourceReferenceDt(); 822 } 823 return myPatient; 824 } 825 826 /** 827 * Sets the value(s) for <b>patient</b> () 828 * 829 * <p> 830 * <b>Definition:</b> 831 * The patient this person is related to 832 * </p> 833 */ 834 public RelatedPerson setPatient(ResourceReferenceDt theValue) { 835 myPatient = theValue; 836 return this; 837 } 838 839 840 841 842 /** 843 * Gets the value(s) for <b>relationship</b> (class). 844 * creating it if it does 845 * not exist. Will not return <code>null</code>. 846 * 847 * <p> 848 * <b>Definition:</b> 849 * The nature of the relationship between a patient and the related person 850 * </p> 851 */ 852 public CodeableConceptDt getRelationship() { 853 if (myRelationship == null) { 854 myRelationship = new CodeableConceptDt(); 855 } 856 return myRelationship; 857 } 858 859 /** 860 * Sets the value(s) for <b>relationship</b> (class) 861 * 862 * <p> 863 * <b>Definition:</b> 864 * The nature of the relationship between a patient and the related person 865 * </p> 866 */ 867 public RelatedPerson setRelationship(CodeableConceptDt theValue) { 868 myRelationship = theValue; 869 return this; 870 } 871 872 873 874 875 /** 876 * Gets the value(s) for <b>name</b> (). 877 * creating it if it does 878 * not exist. Will not return <code>null</code>. 879 * 880 * <p> 881 * <b>Definition:</b> 882 * A name associated with the person 883 * </p> 884 */ 885 public HumanNameDt getName() { 886 if (myName == null) { 887 myName = new HumanNameDt(); 888 } 889 return myName; 890 } 891 892 /** 893 * Sets the value(s) for <b>name</b> () 894 * 895 * <p> 896 * <b>Definition:</b> 897 * A name associated with the person 898 * </p> 899 */ 900 public RelatedPerson setName(HumanNameDt theValue) { 901 myName = theValue; 902 return this; 903 } 904 905 906 907 908 /** 909 * Gets the value(s) for <b>telecom</b> (). 910 * creating it if it does 911 * not exist. Will not return <code>null</code>. 912 * 913 * <p> 914 * <b>Definition:</b> 915 * A contact detail for the person, e.g. a telephone number or an email address. 916 * </p> 917 */ 918 public java.util.List<ContactPointDt> getTelecom() { 919 if (myTelecom == null) { 920 myTelecom = new java.util.ArrayList<ContactPointDt>(); 921 } 922 return myTelecom; 923 } 924 925 /** 926 * Sets the value(s) for <b>telecom</b> () 927 * 928 * <p> 929 * <b>Definition:</b> 930 * A contact detail for the person, e.g. a telephone number or an email address. 931 * </p> 932 */ 933 public RelatedPerson setTelecom(java.util.List<ContactPointDt> theValue) { 934 myTelecom = theValue; 935 return this; 936 } 937 938 939 940 /** 941 * Adds and returns a new value for <b>telecom</b> () 942 * 943 * <p> 944 * <b>Definition:</b> 945 * A contact detail for the person, e.g. a telephone number or an email address. 946 * </p> 947 */ 948 public ContactPointDt addTelecom() { 949 ContactPointDt newType = new ContactPointDt(); 950 getTelecom().add(newType); 951 return newType; 952 } 953 954 /** 955 * Adds a given new value for <b>telecom</b> () 956 * 957 * <p> 958 * <b>Definition:</b> 959 * A contact detail for the person, e.g. a telephone number or an email address. 960 * </p> 961 * @param theValue The telecom to add (must not be <code>null</code>) 962 */ 963 public RelatedPerson addTelecom(ContactPointDt theValue) { 964 if (theValue == null) { 965 throw new NullPointerException("theValue must not be null"); 966 } 967 getTelecom().add(theValue); 968 return this; 969 } 970 971 /** 972 * Gets the first repetition for <b>telecom</b> (), 973 * creating it if it does not already exist. 974 * 975 * <p> 976 * <b>Definition:</b> 977 * A contact detail for the person, e.g. a telephone number or an email address. 978 * </p> 979 */ 980 public ContactPointDt getTelecomFirstRep() { 981 if (getTelecom().isEmpty()) { 982 return addTelecom(); 983 } 984 return getTelecom().get(0); 985 } 986 987 /** 988 * Gets the value(s) for <b>gender</b> (). 989 * creating it if it does 990 * not exist. Will not return <code>null</code>. 991 * 992 * <p> 993 * <b>Definition:</b> 994 * Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 995 * </p> 996 */ 997 public BoundCodeDt<AdministrativeGenderEnum> getGenderElement() { 998 if (myGender == null) { 999 myGender = new BoundCodeDt<AdministrativeGenderEnum>(AdministrativeGenderEnum.VALUESET_BINDER); 1000 } 1001 return myGender; 1002 } 1003 1004 1005 /** 1006 * Gets the value(s) for <b>gender</b> (). 1007 * creating it if it does 1008 * not exist. This method may return <code>null</code>. 1009 * 1010 * <p> 1011 * <b>Definition:</b> 1012 * Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 1013 * </p> 1014 */ 1015 public String getGender() { 1016 return getGenderElement().getValue(); 1017 } 1018 1019 /** 1020 * Sets the value(s) for <b>gender</b> () 1021 * 1022 * <p> 1023 * <b>Definition:</b> 1024 * Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 1025 * </p> 1026 */ 1027 public RelatedPerson setGender(BoundCodeDt<AdministrativeGenderEnum> theValue) { 1028 myGender = theValue; 1029 return this; 1030 } 1031 1032 1033 1034 /** 1035 * Sets the value(s) for <b>gender</b> () 1036 * 1037 * <p> 1038 * <b>Definition:</b> 1039 * Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 1040 * </p> 1041 */ 1042 public RelatedPerson setGender(AdministrativeGenderEnum theValue) { 1043 setGender(new BoundCodeDt<AdministrativeGenderEnum>(AdministrativeGenderEnum.VALUESET_BINDER, theValue)); 1044 1045/* 1046 getGenderElement().setValueAsEnum(theValue); 1047*/ 1048 return this; 1049 } 1050 1051 1052 /** 1053 * Gets the value(s) for <b>birthDate</b> (). 1054 * creating it if it does 1055 * not exist. Will not return <code>null</code>. 1056 * 1057 * <p> 1058 * <b>Definition:</b> 1059 * 1060 * </p> 1061 */ 1062 public DateDt getBirthDateElement() { 1063 if (myBirthDate == null) { 1064 myBirthDate = new DateDt(); 1065 } 1066 return myBirthDate; 1067 } 1068 1069 1070 /** 1071 * Gets the value(s) for <b>birthDate</b> (). 1072 * creating it if it does 1073 * not exist. This method may return <code>null</code>. 1074 * 1075 * <p> 1076 * <b>Definition:</b> 1077 * 1078 * </p> 1079 */ 1080 public Date getBirthDate() { 1081 return getBirthDateElement().getValue(); 1082 } 1083 1084 /** 1085 * Sets the value(s) for <b>birthDate</b> () 1086 * 1087 * <p> 1088 * <b>Definition:</b> 1089 * 1090 * </p> 1091 */ 1092 public RelatedPerson setBirthDate(DateDt theValue) { 1093 myBirthDate = theValue; 1094 return this; 1095 } 1096 1097 1098 1099 /** 1100 * Sets the value for <b>birthDate</b> () 1101 * 1102 * <p> 1103 * <b>Definition:</b> 1104 * 1105 * </p> 1106 */ 1107 public RelatedPerson setBirthDateWithDayPrecision( Date theDate) { 1108 myBirthDate = new DateDt(theDate); 1109 return this; 1110 } 1111 1112 /** 1113 * Sets the value for <b>birthDate</b> () 1114 * 1115 * <p> 1116 * <b>Definition:</b> 1117 * 1118 * </p> 1119 */ 1120 public RelatedPerson setBirthDate( Date theDate, TemporalPrecisionEnum thePrecision) { 1121 myBirthDate = new DateDt(theDate, thePrecision); 1122 return this; 1123 } 1124 1125 1126 /** 1127 * Gets the value(s) for <b>address</b> (). 1128 * creating it if it does 1129 * not exist. Will not return <code>null</code>. 1130 * 1131 * <p> 1132 * <b>Definition:</b> 1133 * Address where the related person can be contacted or visited 1134 * </p> 1135 */ 1136 public java.util.List<AddressDt> getAddress() { 1137 if (myAddress == null) { 1138 myAddress = new java.util.ArrayList<AddressDt>(); 1139 } 1140 return myAddress; 1141 } 1142 1143 /** 1144 * Sets the value(s) for <b>address</b> () 1145 * 1146 * <p> 1147 * <b>Definition:</b> 1148 * Address where the related person can be contacted or visited 1149 * </p> 1150 */ 1151 public RelatedPerson setAddress(java.util.List<AddressDt> theValue) { 1152 myAddress = theValue; 1153 return this; 1154 } 1155 1156 1157 1158 /** 1159 * Adds and returns a new value for <b>address</b> () 1160 * 1161 * <p> 1162 * <b>Definition:</b> 1163 * Address where the related person can be contacted or visited 1164 * </p> 1165 */ 1166 public AddressDt addAddress() { 1167 AddressDt newType = new AddressDt(); 1168 getAddress().add(newType); 1169 return newType; 1170 } 1171 1172 /** 1173 * Adds a given new value for <b>address</b> () 1174 * 1175 * <p> 1176 * <b>Definition:</b> 1177 * Address where the related person can be contacted or visited 1178 * </p> 1179 * @param theValue The address to add (must not be <code>null</code>) 1180 */ 1181 public RelatedPerson addAddress(AddressDt theValue) { 1182 if (theValue == null) { 1183 throw new NullPointerException("theValue must not be null"); 1184 } 1185 getAddress().add(theValue); 1186 return this; 1187 } 1188 1189 /** 1190 * Gets the first repetition for <b>address</b> (), 1191 * creating it if it does not already exist. 1192 * 1193 * <p> 1194 * <b>Definition:</b> 1195 * Address where the related person can be contacted or visited 1196 * </p> 1197 */ 1198 public AddressDt getAddressFirstRep() { 1199 if (getAddress().isEmpty()) { 1200 return addAddress(); 1201 } 1202 return getAddress().get(0); 1203 } 1204 1205 /** 1206 * Gets the value(s) for <b>photo</b> (). 1207 * creating it if it does 1208 * not exist. Will not return <code>null</code>. 1209 * 1210 * <p> 1211 * <b>Definition:</b> 1212 * Image of the person 1213 * </p> 1214 */ 1215 public java.util.List<AttachmentDt> getPhoto() { 1216 if (myPhoto == null) { 1217 myPhoto = new java.util.ArrayList<AttachmentDt>(); 1218 } 1219 return myPhoto; 1220 } 1221 1222 /** 1223 * Sets the value(s) for <b>photo</b> () 1224 * 1225 * <p> 1226 * <b>Definition:</b> 1227 * Image of the person 1228 * </p> 1229 */ 1230 public RelatedPerson setPhoto(java.util.List<AttachmentDt> theValue) { 1231 myPhoto = theValue; 1232 return this; 1233 } 1234 1235 1236 1237 /** 1238 * Adds and returns a new value for <b>photo</b> () 1239 * 1240 * <p> 1241 * <b>Definition:</b> 1242 * Image of the person 1243 * </p> 1244 */ 1245 public AttachmentDt addPhoto() { 1246 AttachmentDt newType = new AttachmentDt(); 1247 getPhoto().add(newType); 1248 return newType; 1249 } 1250 1251 /** 1252 * Adds a given new value for <b>photo</b> () 1253 * 1254 * <p> 1255 * <b>Definition:</b> 1256 * Image of the person 1257 * </p> 1258 * @param theValue The photo to add (must not be <code>null</code>) 1259 */ 1260 public RelatedPerson addPhoto(AttachmentDt theValue) { 1261 if (theValue == null) { 1262 throw new NullPointerException("theValue must not be null"); 1263 } 1264 getPhoto().add(theValue); 1265 return this; 1266 } 1267 1268 /** 1269 * Gets the first repetition for <b>photo</b> (), 1270 * creating it if it does not already exist. 1271 * 1272 * <p> 1273 * <b>Definition:</b> 1274 * Image of the person 1275 * </p> 1276 */ 1277 public AttachmentDt getPhotoFirstRep() { 1278 if (getPhoto().isEmpty()) { 1279 return addPhoto(); 1280 } 1281 return getPhoto().get(0); 1282 } 1283 1284 /** 1285 * Gets the value(s) for <b>period</b> (when.done). 1286 * creating it if it does 1287 * not exist. Will not return <code>null</code>. 1288 * 1289 * <p> 1290 * <b>Definition:</b> 1291 * The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown. 1292 * </p> 1293 */ 1294 public PeriodDt getPeriod() { 1295 if (myPeriod == null) { 1296 myPeriod = new PeriodDt(); 1297 } 1298 return myPeriod; 1299 } 1300 1301 /** 1302 * Sets the value(s) for <b>period</b> (when.done) 1303 * 1304 * <p> 1305 * <b>Definition:</b> 1306 * The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown. 1307 * </p> 1308 */ 1309 public RelatedPerson setPeriod(PeriodDt theValue) { 1310 myPeriod = theValue; 1311 return this; 1312 } 1313 1314 1315 1316 1317 1318 1319 @Override 1320 public String getResourceName() { 1321 return "RelatedPerson"; 1322 } 1323 1324 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1325 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1326 } 1327 1328 1329}