001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.valueset.AnimalSpeciesEnum; 042import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 043import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 044import ca.uhn.fhir.model.dstu2.resource.Appointment; 045import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 048import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 049import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 057import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 058import ca.uhn.fhir.model.dstu2.resource.BodySite; 059import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 060import ca.uhn.fhir.model.dstu2.resource.CarePlan; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityCategoryEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 063import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 064import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 065import ca.uhn.fhir.model.dstu2.resource.Claim; 066import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 067import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 068import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 069import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 070import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 071import ca.uhn.fhir.model.dstu2.composite.CodingDt; 072import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 073import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 074import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 075import ca.uhn.fhir.model.dstu2.resource.Composition; 076import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 077import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 078import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 079import ca.uhn.fhir.model.dstu2.resource.Condition; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 082import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 083import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConditionsCodesEnum; 085import ca.uhn.fhir.model.dstu2.resource.Conformance; 086import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 087import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 088import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 089import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 090import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 091import ca.uhn.fhir.model.dstu2.resource.Contract; 092import ca.uhn.fhir.model.dstu2.valueset.ContractActionCodesEnum; 093import ca.uhn.fhir.model.dstu2.valueset.ContractActorRoleCodesEnum; 094import ca.uhn.fhir.model.dstu2.valueset.ContractSubtypeCodesEnum; 095import ca.uhn.fhir.model.dstu2.valueset.ContractTermTypeCodesEnum; 096import ca.uhn.fhir.model.dstu2.valueset.ContractTypeCodesEnum; 097import ca.uhn.fhir.model.dstu2.resource.Coverage; 098import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 101import ca.uhn.fhir.model.dstu2.resource.Device; 102import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 103import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 105import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 106import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 108import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 109import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 110import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 111import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 112import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 113import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 114import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 115import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 116import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 117import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 118import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 119import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 120import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 121import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 122import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 123import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 124import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 125import ca.uhn.fhir.model.dstu2.resource.Encounter; 126import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 127import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 128import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 129import ca.uhn.fhir.model.dstu2.valueset.EncounterTypeEnum; 130import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 131import ca.uhn.fhir.model.dstu2.valueset.EnteralFormulaTypeCodesEnum; 132import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 133import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 134import ca.uhn.fhir.model.dstu2.valueset.ExceptionCodesEnum; 135import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 136import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 137import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 138import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 139import ca.uhn.fhir.model.dstu2.valueset.FlagCategoryCodesEnum; 140import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 141import ca.uhn.fhir.model.dstu2.valueset.FluidConsistencyTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.resource.Goal; 143import ca.uhn.fhir.model.dstu2.valueset.GoalCategoryEnum; 144import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 145import ca.uhn.fhir.model.dstu2.valueset.GoalStartEventEnum; 146import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 147import ca.uhn.fhir.model.dstu2.valueset.GoalStatusReasonEnum; 148import ca.uhn.fhir.model.dstu2.resource.Group; 149import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 150import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 152import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 153import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 154import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 155import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 156import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 157import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 158import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 159import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 160import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 161import ca.uhn.fhir.model.dstu2.resource.Immunization; 162import ca.uhn.fhir.model.dstu2.valueset.ImmunizationReasonCodesEnum; 163import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationDateCriterionCodesEnum; 164import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationStatusCodesEnum; 165import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRouteCodesEnum; 166import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 167import ca.uhn.fhir.model.dstu2.valueset.InterventionCodesEnum; 168import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 169import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 170import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 171import ca.uhn.fhir.model.dstu2.valueset.LateralityEnum; 172import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 175import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 176import ca.uhn.fhir.model.dstu2.resource.Location; 177import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 178import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 179import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 180import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 181import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 182import ca.uhn.fhir.model.dstu2.resource.Media; 183import ca.uhn.fhir.model.dstu2.resource.Medication; 184import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 185import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 187import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 188import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 189import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 190import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 191import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 192import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 193import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 194import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 195import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 196import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 197import ca.uhn.fhir.model.dstu2.valueset.NutrientModifierCodesEnum; 198import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 199import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 200import ca.uhn.fhir.model.dstu2.resource.Observation; 201import ca.uhn.fhir.model.dstu2.valueset.ObservationCategoryCodesEnum; 202import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 203import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 204import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 205import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 206import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 207import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 208import ca.uhn.fhir.model.dstu2.resource.Order; 209import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 210import ca.uhn.fhir.model.dstu2.resource.Organization; 211import ca.uhn.fhir.model.dstu2.valueset.OrganizationTypeEnum; 212import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 213import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 214import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 216import ca.uhn.fhir.model.dstu2.resource.Patient; 217import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 218import ca.uhn.fhir.model.dstu2.valueset.PaymentStatusCodesEnum; 219import ca.uhn.fhir.model.dstu2.valueset.PaymentTypeCodesEnum; 220import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 221import ca.uhn.fhir.model.dstu2.resource.Person; 222import ca.uhn.fhir.model.dstu2.resource.Practitioner; 223import ca.uhn.fhir.model.dstu2.valueset.PractitionerRoleEnum; 224import ca.uhn.fhir.model.dstu2.valueset.PractitionerSpecialtyEnum; 225import ca.uhn.fhir.model.dstu2.valueset.PriorityCodesEnum; 226import ca.uhn.fhir.model.dstu2.resource.Procedure; 227import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 228import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 229import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 230import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 232import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 233import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 234import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 235import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 236import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 237import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 238import ca.uhn.fhir.model.dstu2.composite.RangeDt; 239import ca.uhn.fhir.model.dstu2.composite.RatioDt; 240import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 241import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 242import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 243import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 244import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 245import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 247import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 249import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 250import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 251import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 252import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 253import ca.uhn.fhir.model.dstu2.resource.Schedule; 254import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 255import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 256import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 257import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 258import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 259import ca.uhn.fhir.model.dstu2.resource.Slot; 260import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 261import ca.uhn.fhir.model.dstu2.resource.Specimen; 262import ca.uhn.fhir.model.dstu2.valueset.SpecimenCollectionMethodEnum; 263import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 264import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 265import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 266import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 267import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 268import ca.uhn.fhir.model.dstu2.valueset.SubscriptionTagEnum; 269import ca.uhn.fhir.model.dstu2.resource.Substance; 270import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 271import ca.uhn.fhir.model.dstu2.valueset.SupplementTypeCodesEnum; 272import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 273import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 274import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestReasonEnum; 275import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 276import ca.uhn.fhir.model.dstu2.valueset.SurfaceCodesEnum; 277import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 278import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 279import ca.uhn.fhir.model.dstu2.valueset.TextureModifiedFoodTypeCodesEnum; 280import ca.uhn.fhir.model.dstu2.valueset.TextureModifierCodesEnum; 281import ca.uhn.fhir.model.dstu2.composite.TimingDt; 282import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 283import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 284import ca.uhn.fhir.model.dstu2.valueset.UDICodesEnum; 285import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 286import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 287import ca.uhn.fhir.model.dstu2.resource.ValueSet; 288import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 289import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 290import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 291import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 292import ca.uhn.fhir.model.api.IResource; 293import ca.uhn.fhir.model.dstu2.composite.AgeDt; 294import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 295import ca.uhn.fhir.model.dstu2.composite.DurationDt; 296import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 297import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 298import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 299import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 300import ca.uhn.fhir.model.primitive.Base64BinaryDt; 301import ca.uhn.fhir.model.primitive.BooleanDt; 302import ca.uhn.fhir.model.primitive.BoundCodeDt; 303import ca.uhn.fhir.model.primitive.CodeDt; 304import ca.uhn.fhir.model.primitive.DateDt; 305import ca.uhn.fhir.model.primitive.DateTimeDt; 306import ca.uhn.fhir.model.primitive.DecimalDt; 307import ca.uhn.fhir.model.primitive.IdDt; 308import ca.uhn.fhir.model.primitive.InstantDt; 309import ca.uhn.fhir.model.primitive.IntegerDt; 310import ca.uhn.fhir.model.primitive.OidDt; 311import ca.uhn.fhir.model.primitive.PositiveIntDt; 312import ca.uhn.fhir.model.primitive.StringDt; 313import ca.uhn.fhir.model.primitive.TimeDt; 314import ca.uhn.fhir.model.primitive.UnsignedIntDt; 315import ca.uhn.fhir.model.primitive.UriDt; 316 317 318/** 319 * HAPI/FHIR <b>Group</b> Resource 320 * (administrative.group) 321 * 322 * <p> 323 * <b>Definition:</b> 324 * Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization. 325 * </p> 326 * 327 * <p> 328 * <b>Requirements:</b> 329 * 330 * </p> 331 * 332 * <p> 333 * <b>Profile Definition:</b> 334 * <a href="http://hl7.org/fhir/profiles/Group">http://hl7.org/fhir/profiles/Group</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="Group", profile="http://hl7.org/fhir/profiles/Group", id="group") 339public class Group extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>type</b> 344 * <p> 345 * Description: <b>The type of resources the group contains</b><br> 346 * Type: <b>token</b><br> 347 * Path: <b>Group.type</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="type", path="Group.type", description="The type of resources the group contains", type="token" ) 351 public static final String SP_TYPE = "type"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>type</b> 355 * <p> 356 * Description: <b>The type of resources the group contains</b><br> 357 * Type: <b>token</b><br> 358 * Path: <b>Group.type</b><br> 359 * </p> 360 */ 361 public static final TokenClientParam TYPE = new TokenClientParam(SP_TYPE); 362 363 /** 364 * Search parameter constant for <b>code</b> 365 * <p> 366 * Description: <b>The kind of resources contained</b><br> 367 * Type: <b>token</b><br> 368 * Path: <b>Group.code</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="code", path="Group.code", description="The kind of resources contained", type="token" ) 372 public static final String SP_CODE = "code"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>code</b> 376 * <p> 377 * Description: <b>The kind of resources contained</b><br> 378 * Type: <b>token</b><br> 379 * Path: <b>Group.code</b><br> 380 * </p> 381 */ 382 public static final TokenClientParam CODE = new TokenClientParam(SP_CODE); 383 384 /** 385 * Search parameter constant for <b>actual</b> 386 * <p> 387 * Description: <b></b><br> 388 * Type: <b>token</b><br> 389 * Path: <b>Group.actual</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="actual", path="Group.actual", description="", type="token" ) 393 public static final String SP_ACTUAL = "actual"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>actual</b> 397 * <p> 398 * Description: <b></b><br> 399 * Type: <b>token</b><br> 400 * Path: <b>Group.actual</b><br> 401 * </p> 402 */ 403 public static final TokenClientParam ACTUAL = new TokenClientParam(SP_ACTUAL); 404 405 /** 406 * Search parameter constant for <b>identifier</b> 407 * <p> 408 * Description: <b></b><br> 409 * Type: <b>token</b><br> 410 * Path: <b>Group.identifier</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="identifier", path="Group.identifier", description="", type="token" ) 414 public static final String SP_IDENTIFIER = "identifier"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 418 * <p> 419 * Description: <b></b><br> 420 * Type: <b>token</b><br> 421 * Path: <b>Group.identifier</b><br> 422 * </p> 423 */ 424 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 425 426 /** 427 * Search parameter constant for <b>member</b> 428 * <p> 429 * Description: <b></b><br> 430 * Type: <b>reference</b><br> 431 * Path: <b>Group.member.entity</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="member", path="Group.member.entity", description="", type="reference" ) 435 public static final String SP_MEMBER = "member"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>member</b> 439 * <p> 440 * Description: <b></b><br> 441 * Type: <b>reference</b><br> 442 * Path: <b>Group.member.entity</b><br> 443 * </p> 444 */ 445 public static final ReferenceClientParam MEMBER = new ReferenceClientParam(SP_MEMBER); 446 447 /** 448 * Search parameter constant for <b>characteristic</b> 449 * <p> 450 * Description: <b></b><br> 451 * Type: <b>token</b><br> 452 * Path: <b>Group.characteristic.code</b><br> 453 * </p> 454 */ 455 @SearchParamDefinition(name="characteristic", path="Group.characteristic.code", description="", type="token" ) 456 public static final String SP_CHARACTERISTIC = "characteristic"; 457 458 /** 459 * <b>Fluent Client</b> search parameter constant for <b>characteristic</b> 460 * <p> 461 * Description: <b></b><br> 462 * Type: <b>token</b><br> 463 * Path: <b>Group.characteristic.code</b><br> 464 * </p> 465 */ 466 public static final TokenClientParam CHARACTERISTIC = new TokenClientParam(SP_CHARACTERISTIC); 467 468 /** 469 * Search parameter constant for <b>value</b> 470 * <p> 471 * Description: <b></b><br> 472 * Type: <b>token</b><br> 473 * Path: <b>Group.characteristic.value[x]</b><br> 474 * </p> 475 */ 476 @SearchParamDefinition(name="value", path="Group.characteristic.value[x]", description="", type="token" ) 477 public static final String SP_VALUE = "value"; 478 479 /** 480 * <b>Fluent Client</b> search parameter constant for <b>value</b> 481 * <p> 482 * Description: <b></b><br> 483 * Type: <b>token</b><br> 484 * Path: <b>Group.characteristic.value[x]</b><br> 485 * </p> 486 */ 487 public static final TokenClientParam VALUE = new TokenClientParam(SP_VALUE); 488 489 /** 490 * Search parameter constant for <b>exclude</b> 491 * <p> 492 * Description: <b></b><br> 493 * Type: <b>token</b><br> 494 * Path: <b>Group.characteristic.exclude</b><br> 495 * </p> 496 */ 497 @SearchParamDefinition(name="exclude", path="Group.characteristic.exclude", description="", type="token" ) 498 public static final String SP_EXCLUDE = "exclude"; 499 500 /** 501 * <b>Fluent Client</b> search parameter constant for <b>exclude</b> 502 * <p> 503 * Description: <b></b><br> 504 * Type: <b>token</b><br> 505 * Path: <b>Group.characteristic.exclude</b><br> 506 * </p> 507 */ 508 public static final TokenClientParam EXCLUDE = new TokenClientParam(SP_EXCLUDE); 509 510 /** 511 * Search parameter constant for <b>characteristic-value</b> 512 * <p> 513 * Description: <b>A composite of both characteristic and value</b><br> 514 * Type: <b>composite</b><br> 515 * Path: <b>characteristic & value</b><br> 516 * </p> 517 */ 518 @SearchParamDefinition(name="characteristic-value", path="characteristic & value", description="A composite of both characteristic and value", type="composite" , compositeOf={ "characteristic", "value" } ) 519 public static final String SP_CHARACTERISTIC_VALUE = "characteristic-value"; 520 521 /** 522 * <b>Fluent Client</b> search parameter constant for <b>characteristic-value</b> 523 * <p> 524 * Description: <b>A composite of both characteristic and value</b><br> 525 * Type: <b>composite</b><br> 526 * Path: <b>characteristic & value</b><br> 527 * </p> 528 */ 529 public static final CompositeClientParam<TokenClientParam, TokenClientParam> CHARACTERISTIC_VALUE = new CompositeClientParam<TokenClientParam, TokenClientParam>(SP_CHARACTERISTIC_VALUE); 530 531 532 /** 533 * Constant for fluent queries to be used to add include statements. Specifies 534 * the path value of "<b>Group:member</b>". 535 */ 536 public static final Include INCLUDE_MEMBER = new Include("Group:member"); 537 538 539 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 540 @Description( 541 shortDefinition="id", 542 formalDefinition="A unique business identifier for this group" 543 ) 544 private java.util.List<IdentifierDt> myIdentifier; 545 546 @Child(name="type", type=CodeDt.class, order=1, min=1, max=1, summary=true, modifier=false) 547 @Description( 548 shortDefinition="class", 549 formalDefinition="Identifies the broad classification of the kind of resources the group includes" 550 ) 551 private BoundCodeDt<GroupTypeEnum> myType; 552 553 @Child(name="actual", type=BooleanDt.class, order=2, min=1, max=1, summary=true, modifier=false) 554 @Description( 555 shortDefinition="", 556 formalDefinition="If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals" 557 ) 558 private BooleanDt myActual; 559 560 @Child(name="code", type=CodeableConceptDt.class, order=3, min=0, max=1, summary=true, modifier=false) 561 @Description( 562 shortDefinition="", 563 formalDefinition="Provides a specific type of resource the group includes; e.g. \"cow\", \"syringe\", etc." 564 ) 565 private CodeableConceptDt myCode; 566 567 @Child(name="name", type=StringDt.class, order=4, min=0, max=1, summary=true, modifier=false) 568 @Description( 569 shortDefinition="", 570 formalDefinition="A label assigned to the group for human identification and communication" 571 ) 572 private StringDt myName; 573 574 @Child(name="quantity", type=UnsignedIntDt.class, order=5, min=0, max=1, summary=true, modifier=false) 575 @Description( 576 shortDefinition="", 577 formalDefinition="A count of the number of resource instances that are part of the group" 578 ) 579 private UnsignedIntDt myQuantity; 580 581 @Child(name="characteristic", order=6, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 582 @Description( 583 shortDefinition="", 584 formalDefinition="Identifies the traits shared by members of the group" 585 ) 586 private java.util.List<Characteristic> myCharacteristic; 587 588 @Child(name="member", order=7, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 589 @Description( 590 shortDefinition="", 591 formalDefinition="Identifies the resource instances that are members of the group." 592 ) 593 private java.util.List<Member> myMember; 594 595 596 @Override 597 public boolean isEmpty() { 598 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myType, myActual, myCode, myName, myQuantity, myCharacteristic, myMember); 599 } 600 601 @Override 602 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 603 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myType, myActual, myCode, myName, myQuantity, myCharacteristic, myMember); 604 } 605 606 /** 607 * Gets the value(s) for <b>identifier</b> (id). 608 * creating it if it does 609 * not exist. Will not return <code>null</code>. 610 * 611 * <p> 612 * <b>Definition:</b> 613 * A unique business identifier for this group 614 * </p> 615 */ 616 public java.util.List<IdentifierDt> getIdentifier() { 617 if (myIdentifier == null) { 618 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 619 } 620 return myIdentifier; 621 } 622 623 /** 624 * Sets the value(s) for <b>identifier</b> (id) 625 * 626 * <p> 627 * <b>Definition:</b> 628 * A unique business identifier for this group 629 * </p> 630 */ 631 public Group setIdentifier(java.util.List<IdentifierDt> theValue) { 632 myIdentifier = theValue; 633 return this; 634 } 635 636 637 638 /** 639 * Adds and returns a new value for <b>identifier</b> (id) 640 * 641 * <p> 642 * <b>Definition:</b> 643 * A unique business identifier for this group 644 * </p> 645 */ 646 public IdentifierDt addIdentifier() { 647 IdentifierDt newType = new IdentifierDt(); 648 getIdentifier().add(newType); 649 return newType; 650 } 651 652 /** 653 * Adds a given new value for <b>identifier</b> (id) 654 * 655 * <p> 656 * <b>Definition:</b> 657 * A unique business identifier for this group 658 * </p> 659 * @param theValue The identifier to add (must not be <code>null</code>) 660 */ 661 public Group addIdentifier(IdentifierDt theValue) { 662 if (theValue == null) { 663 throw new NullPointerException("theValue must not be null"); 664 } 665 getIdentifier().add(theValue); 666 return this; 667 } 668 669 /** 670 * Gets the first repetition for <b>identifier</b> (id), 671 * creating it if it does not already exist. 672 * 673 * <p> 674 * <b>Definition:</b> 675 * A unique business identifier for this group 676 * </p> 677 */ 678 public IdentifierDt getIdentifierFirstRep() { 679 if (getIdentifier().isEmpty()) { 680 return addIdentifier(); 681 } 682 return getIdentifier().get(0); 683 } 684 685 /** 686 * Gets the value(s) for <b>type</b> (class). 687 * creating it if it does 688 * not exist. Will not return <code>null</code>. 689 * 690 * <p> 691 * <b>Definition:</b> 692 * Identifies the broad classification of the kind of resources the group includes 693 * </p> 694 */ 695 public BoundCodeDt<GroupTypeEnum> getTypeElement() { 696 if (myType == null) { 697 myType = new BoundCodeDt<GroupTypeEnum>(GroupTypeEnum.VALUESET_BINDER); 698 } 699 return myType; 700 } 701 702 703 /** 704 * Gets the value(s) for <b>type</b> (class). 705 * creating it if it does 706 * not exist. Will not return <code>null</code>. 707 * 708 * <p> 709 * <b>Definition:</b> 710 * Identifies the broad classification of the kind of resources the group includes 711 * </p> 712 */ 713 public String getType() { 714 return getTypeElement().getValue(); 715 } 716 717 /** 718 * Sets the value(s) for <b>type</b> (class) 719 * 720 * <p> 721 * <b>Definition:</b> 722 * Identifies the broad classification of the kind of resources the group includes 723 * </p> 724 */ 725 public Group setType(BoundCodeDt<GroupTypeEnum> theValue) { 726 myType = theValue; 727 return this; 728 } 729 730 731 732 /** 733 * Sets the value(s) for <b>type</b> (class) 734 * 735 * <p> 736 * <b>Definition:</b> 737 * Identifies the broad classification of the kind of resources the group includes 738 * </p> 739 */ 740 public Group setType(GroupTypeEnum theValue) { 741 setType(new BoundCodeDt<GroupTypeEnum>(GroupTypeEnum.VALUESET_BINDER, theValue)); 742 743/* 744 getTypeElement().setValueAsEnum(theValue); 745*/ 746 return this; 747 } 748 749 750 /** 751 * Gets the value(s) for <b>actual</b> (). 752 * creating it if it does 753 * not exist. Will not return <code>null</code>. 754 * 755 * <p> 756 * <b>Definition:</b> 757 * If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals 758 * </p> 759 */ 760 public BooleanDt getActualElement() { 761 if (myActual == null) { 762 myActual = new BooleanDt(); 763 } 764 return myActual; 765 } 766 767 768 /** 769 * Gets the value(s) for <b>actual</b> (). 770 * creating it if it does 771 * not exist. Will not return <code>null</code>. 772 * 773 * <p> 774 * <b>Definition:</b> 775 * If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals 776 * </p> 777 */ 778 public Boolean getActual() { 779 return getActualElement().getValue(); 780 } 781 782 /** 783 * Sets the value(s) for <b>actual</b> () 784 * 785 * <p> 786 * <b>Definition:</b> 787 * If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals 788 * </p> 789 */ 790 public Group setActual(BooleanDt theValue) { 791 myActual = theValue; 792 return this; 793 } 794 795 796 797 /** 798 * Sets the value for <b>actual</b> () 799 * 800 * <p> 801 * <b>Definition:</b> 802 * If true, indicates that the resource refers to a specific group of real individuals. If false, the group defines a set of intended individuals 803 * </p> 804 */ 805 public Group setActual( boolean theBoolean) { 806 myActual = new BooleanDt(theBoolean); 807 return this; 808 } 809 810 811 /** 812 * Gets the value(s) for <b>code</b> (). 813 * creating it if it does 814 * not exist. Will not return <code>null</code>. 815 * 816 * <p> 817 * <b>Definition:</b> 818 * Provides a specific type of resource the group includes; e.g. \"cow\", \"syringe\", etc. 819 * </p> 820 */ 821 public CodeableConceptDt getCode() { 822 if (myCode == null) { 823 myCode = new CodeableConceptDt(); 824 } 825 return myCode; 826 } 827 828 /** 829 * Sets the value(s) for <b>code</b> () 830 * 831 * <p> 832 * <b>Definition:</b> 833 * Provides a specific type of resource the group includes; e.g. \"cow\", \"syringe\", etc. 834 * </p> 835 */ 836 public Group setCode(CodeableConceptDt theValue) { 837 myCode = theValue; 838 return this; 839 } 840 841 842 843 844 /** 845 * Gets the value(s) for <b>name</b> (). 846 * creating it if it does 847 * not exist. Will not return <code>null</code>. 848 * 849 * <p> 850 * <b>Definition:</b> 851 * A label assigned to the group for human identification and communication 852 * </p> 853 */ 854 public StringDt getNameElement() { 855 if (myName == null) { 856 myName = new StringDt(); 857 } 858 return myName; 859 } 860 861 862 /** 863 * Gets the value(s) for <b>name</b> (). 864 * creating it if it does 865 * not exist. Will not return <code>null</code>. 866 * 867 * <p> 868 * <b>Definition:</b> 869 * A label assigned to the group for human identification and communication 870 * </p> 871 */ 872 public String getName() { 873 return getNameElement().getValue(); 874 } 875 876 /** 877 * Sets the value(s) for <b>name</b> () 878 * 879 * <p> 880 * <b>Definition:</b> 881 * A label assigned to the group for human identification and communication 882 * </p> 883 */ 884 public Group setName(StringDt theValue) { 885 myName = theValue; 886 return this; 887 } 888 889 890 891 /** 892 * Sets the value for <b>name</b> () 893 * 894 * <p> 895 * <b>Definition:</b> 896 * A label assigned to the group for human identification and communication 897 * </p> 898 */ 899 public Group setName( String theString) { 900 myName = new StringDt(theString); 901 return this; 902 } 903 904 905 /** 906 * Gets the value(s) for <b>quantity</b> (). 907 * creating it if it does 908 * not exist. Will not return <code>null</code>. 909 * 910 * <p> 911 * <b>Definition:</b> 912 * A count of the number of resource instances that are part of the group 913 * </p> 914 */ 915 public UnsignedIntDt getQuantityElement() { 916 if (myQuantity == null) { 917 myQuantity = new UnsignedIntDt(); 918 } 919 return myQuantity; 920 } 921 922 923 /** 924 * Gets the value(s) for <b>quantity</b> (). 925 * creating it if it does 926 * not exist. Will not return <code>null</code>. 927 * 928 * <p> 929 * <b>Definition:</b> 930 * A count of the number of resource instances that are part of the group 931 * </p> 932 */ 933 public Integer getQuantity() { 934 return getQuantityElement().getValue(); 935 } 936 937 /** 938 * Sets the value(s) for <b>quantity</b> () 939 * 940 * <p> 941 * <b>Definition:</b> 942 * A count of the number of resource instances that are part of the group 943 * </p> 944 */ 945 public Group setQuantity(UnsignedIntDt theValue) { 946 myQuantity = theValue; 947 return this; 948 } 949 950 951 952 /** 953 * Sets the value for <b>quantity</b> () 954 * 955 * <p> 956 * <b>Definition:</b> 957 * A count of the number of resource instances that are part of the group 958 * </p> 959 */ 960 public Group setQuantity( int theInteger) { 961 myQuantity = new UnsignedIntDt(theInteger); 962 return this; 963 } 964 965 966 /** 967 * Gets the value(s) for <b>characteristic</b> (). 968 * creating it if it does 969 * not exist. Will not return <code>null</code>. 970 * 971 * <p> 972 * <b>Definition:</b> 973 * Identifies the traits shared by members of the group 974 * </p> 975 */ 976 public java.util.List<Characteristic> getCharacteristic() { 977 if (myCharacteristic == null) { 978 myCharacteristic = new java.util.ArrayList<Characteristic>(); 979 } 980 return myCharacteristic; 981 } 982 983 /** 984 * Sets the value(s) for <b>characteristic</b> () 985 * 986 * <p> 987 * <b>Definition:</b> 988 * Identifies the traits shared by members of the group 989 * </p> 990 */ 991 public Group setCharacteristic(java.util.List<Characteristic> theValue) { 992 myCharacteristic = theValue; 993 return this; 994 } 995 996 997 998 /** 999 * Adds and returns a new value for <b>characteristic</b> () 1000 * 1001 * <p> 1002 * <b>Definition:</b> 1003 * Identifies the traits shared by members of the group 1004 * </p> 1005 */ 1006 public Characteristic addCharacteristic() { 1007 Characteristic newType = new Characteristic(); 1008 getCharacteristic().add(newType); 1009 return newType; 1010 } 1011 1012 /** 1013 * Adds a given new value for <b>characteristic</b> () 1014 * 1015 * <p> 1016 * <b>Definition:</b> 1017 * Identifies the traits shared by members of the group 1018 * </p> 1019 * @param theValue The characteristic to add (must not be <code>null</code>) 1020 */ 1021 public Group addCharacteristic(Characteristic theValue) { 1022 if (theValue == null) { 1023 throw new NullPointerException("theValue must not be null"); 1024 } 1025 getCharacteristic().add(theValue); 1026 return this; 1027 } 1028 1029 /** 1030 * Gets the first repetition for <b>characteristic</b> (), 1031 * creating it if it does not already exist. 1032 * 1033 * <p> 1034 * <b>Definition:</b> 1035 * Identifies the traits shared by members of the group 1036 * </p> 1037 */ 1038 public Characteristic getCharacteristicFirstRep() { 1039 if (getCharacteristic().isEmpty()) { 1040 return addCharacteristic(); 1041 } 1042 return getCharacteristic().get(0); 1043 } 1044 1045 /** 1046 * Gets the value(s) for <b>member</b> (). 1047 * creating it if it does 1048 * not exist. Will not return <code>null</code>. 1049 * 1050 * <p> 1051 * <b>Definition:</b> 1052 * Identifies the resource instances that are members of the group. 1053 * </p> 1054 */ 1055 public java.util.List<Member> getMember() { 1056 if (myMember == null) { 1057 myMember = new java.util.ArrayList<Member>(); 1058 } 1059 return myMember; 1060 } 1061 1062 /** 1063 * Sets the value(s) for <b>member</b> () 1064 * 1065 * <p> 1066 * <b>Definition:</b> 1067 * Identifies the resource instances that are members of the group. 1068 * </p> 1069 */ 1070 public Group setMember(java.util.List<Member> theValue) { 1071 myMember = theValue; 1072 return this; 1073 } 1074 1075 1076 1077 /** 1078 * Adds and returns a new value for <b>member</b> () 1079 * 1080 * <p> 1081 * <b>Definition:</b> 1082 * Identifies the resource instances that are members of the group. 1083 * </p> 1084 */ 1085 public Member addMember() { 1086 Member newType = new Member(); 1087 getMember().add(newType); 1088 return newType; 1089 } 1090 1091 /** 1092 * Adds a given new value for <b>member</b> () 1093 * 1094 * <p> 1095 * <b>Definition:</b> 1096 * Identifies the resource instances that are members of the group. 1097 * </p> 1098 * @param theValue The member to add (must not be <code>null</code>) 1099 */ 1100 public Group addMember(Member theValue) { 1101 if (theValue == null) { 1102 throw new NullPointerException("theValue must not be null"); 1103 } 1104 getMember().add(theValue); 1105 return this; 1106 } 1107 1108 /** 1109 * Gets the first repetition for <b>member</b> (), 1110 * creating it if it does not already exist. 1111 * 1112 * <p> 1113 * <b>Definition:</b> 1114 * Identifies the resource instances that are members of the group. 1115 * </p> 1116 */ 1117 public Member getMemberFirstRep() { 1118 if (getMember().isEmpty()) { 1119 return addMember(); 1120 } 1121 return getMember().get(0); 1122 } 1123 1124 /** 1125 * Block class for child element: <b>Group.characteristic</b> () 1126 * 1127 * <p> 1128 * <b>Definition:</b> 1129 * Identifies the traits shared by members of the group 1130 * </p> 1131 */ 1132 @Block() 1133 public static class Characteristic 1134 extends BaseIdentifiableElement implements IResourceBlock { 1135 1136 @Child(name="code", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=false, modifier=false) 1137 @Description( 1138 shortDefinition="", 1139 formalDefinition="A code that identifies the kind of trait being asserted" 1140 ) 1141 private CodeableConceptDt myCode; 1142 1143 @Child(name="value", order=1, min=1, max=1, summary=false, modifier=false, type={ 1144 CodeableConceptDt.class, BooleanDt.class, QuantityDt.class, RangeDt.class }) 1145 @Description( 1146 shortDefinition="", 1147 formalDefinition="The value of the trait that holds (or does not hold - see 'exclude') for members of the group" 1148 ) 1149 private IDatatype myValue; 1150 1151 @Child(name="exclude", type=BooleanDt.class, order=2, min=1, max=1, summary=false, modifier=true) 1152 @Description( 1153 shortDefinition="", 1154 formalDefinition="If true, indicates the characteristic is one that is NOT held by members of the group" 1155 ) 1156 private BooleanDt myExclude; 1157 1158 @Child(name="period", type=PeriodDt.class, order=3, min=0, max=1, summary=false, modifier=false) 1159 @Description( 1160 shortDefinition="", 1161 formalDefinition="The period over which the characteristic is tested; e.g. the patient had an operation during the month of June" 1162 ) 1163 private PeriodDt myPeriod; 1164 1165 1166 @Override 1167 public boolean isEmpty() { 1168 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myValue, myExclude, myPeriod); 1169 } 1170 1171 @Override 1172 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1173 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myValue, myExclude, myPeriod); 1174 } 1175 1176 /** 1177 * Gets the value(s) for <b>code</b> (). 1178 * creating it if it does 1179 * not exist. Will not return <code>null</code>. 1180 * 1181 * <p> 1182 * <b>Definition:</b> 1183 * A code that identifies the kind of trait being asserted 1184 * </p> 1185 */ 1186 public CodeableConceptDt getCode() { 1187 if (myCode == null) { 1188 myCode = new CodeableConceptDt(); 1189 } 1190 return myCode; 1191 } 1192 1193 /** 1194 * Sets the value(s) for <b>code</b> () 1195 * 1196 * <p> 1197 * <b>Definition:</b> 1198 * A code that identifies the kind of trait being asserted 1199 * </p> 1200 */ 1201 public Characteristic setCode(CodeableConceptDt theValue) { 1202 myCode = theValue; 1203 return this; 1204 } 1205 1206 1207 1208 1209 /** 1210 * Gets the value(s) for <b>value[x]</b> (). 1211 * creating it if it does 1212 * not exist. Will not return <code>null</code>. 1213 * 1214 * <p> 1215 * <b>Definition:</b> 1216 * The value of the trait that holds (or does not hold - see 'exclude') for members of the group 1217 * </p> 1218 */ 1219 public IDatatype getValue() { 1220 return myValue; 1221 } 1222 1223 /** 1224 * Sets the value(s) for <b>value[x]</b> () 1225 * 1226 * <p> 1227 * <b>Definition:</b> 1228 * The value of the trait that holds (or does not hold - see 'exclude') for members of the group 1229 * </p> 1230 */ 1231 public Characteristic setValue(IDatatype theValue) { 1232 myValue = theValue; 1233 return this; 1234 } 1235 1236 1237 1238 1239 /** 1240 * Gets the value(s) for <b>exclude</b> (). 1241 * creating it if it does 1242 * not exist. Will not return <code>null</code>. 1243 * 1244 * <p> 1245 * <b>Definition:</b> 1246 * If true, indicates the characteristic is one that is NOT held by members of the group 1247 * </p> 1248 */ 1249 public BooleanDt getExcludeElement() { 1250 if (myExclude == null) { 1251 myExclude = new BooleanDt(); 1252 } 1253 return myExclude; 1254 } 1255 1256 1257 /** 1258 * Gets the value(s) for <b>exclude</b> (). 1259 * creating it if it does 1260 * not exist. Will not return <code>null</code>. 1261 * 1262 * <p> 1263 * <b>Definition:</b> 1264 * If true, indicates the characteristic is one that is NOT held by members of the group 1265 * </p> 1266 */ 1267 public Boolean getExclude() { 1268 return getExcludeElement().getValue(); 1269 } 1270 1271 /** 1272 * Sets the value(s) for <b>exclude</b> () 1273 * 1274 * <p> 1275 * <b>Definition:</b> 1276 * If true, indicates the characteristic is one that is NOT held by members of the group 1277 * </p> 1278 */ 1279 public Characteristic setExclude(BooleanDt theValue) { 1280 myExclude = theValue; 1281 return this; 1282 } 1283 1284 1285 1286 /** 1287 * Sets the value for <b>exclude</b> () 1288 * 1289 * <p> 1290 * <b>Definition:</b> 1291 * If true, indicates the characteristic is one that is NOT held by members of the group 1292 * </p> 1293 */ 1294 public Characteristic setExclude( boolean theBoolean) { 1295 myExclude = new BooleanDt(theBoolean); 1296 return this; 1297 } 1298 1299 1300 /** 1301 * Gets the value(s) for <b>period</b> (). 1302 * creating it if it does 1303 * not exist. Will not return <code>null</code>. 1304 * 1305 * <p> 1306 * <b>Definition:</b> 1307 * The period over which the characteristic is tested; e.g. the patient had an operation during the month of June 1308 * </p> 1309 */ 1310 public PeriodDt getPeriod() { 1311 if (myPeriod == null) { 1312 myPeriod = new PeriodDt(); 1313 } 1314 return myPeriod; 1315 } 1316 1317 /** 1318 * Sets the value(s) for <b>period</b> () 1319 * 1320 * <p> 1321 * <b>Definition:</b> 1322 * The period over which the characteristic is tested; e.g. the patient had an operation during the month of June 1323 * </p> 1324 */ 1325 public Characteristic setPeriod(PeriodDt theValue) { 1326 myPeriod = theValue; 1327 return this; 1328 } 1329 1330 1331 1332 1333 1334 1335 } 1336 1337 1338 /** 1339 * Block class for child element: <b>Group.member</b> () 1340 * 1341 * <p> 1342 * <b>Definition:</b> 1343 * Identifies the resource instances that are members of the group. 1344 * </p> 1345 */ 1346 @Block() 1347 public static class Member 1348 extends BaseIdentifiableElement implements IResourceBlock { 1349 1350 @Child(name="entity", order=0, min=1, max=1, summary=false, modifier=false, type={ 1351 ca.uhn.fhir.model.dstu2.resource.Patient.class, ca.uhn.fhir.model.dstu2.resource.Practitioner.class, ca.uhn.fhir.model.dstu2.resource.Device.class, ca.uhn.fhir.model.dstu2.resource.Medication.class, ca.uhn.fhir.model.dstu2.resource.Substance.class }) 1352 @Description( 1353 shortDefinition="", 1354 formalDefinition="A reference to the entity that is a member of the group. Must be consistent with Group.type" 1355 ) 1356 private ResourceReferenceDt myEntity; 1357 1358 @Child(name="period", type=PeriodDt.class, order=1, min=0, max=1, summary=false, modifier=false) 1359 @Description( 1360 shortDefinition="", 1361 formalDefinition="The period that the member was in the group, if known" 1362 ) 1363 private PeriodDt myPeriod; 1364 1365 @Child(name="inactive", type=BooleanDt.class, order=2, min=0, max=1, summary=false, modifier=false) 1366 @Description( 1367 shortDefinition="", 1368 formalDefinition="A flag to indicate that the member is no longer in the group, but previously may have been a member" 1369 ) 1370 private BooleanDt myInactive; 1371 1372 1373 @Override 1374 public boolean isEmpty() { 1375 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myEntity, myPeriod, myInactive); 1376 } 1377 1378 @Override 1379 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1380 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myEntity, myPeriod, myInactive); 1381 } 1382 1383 /** 1384 * Gets the value(s) for <b>entity</b> (). 1385 * creating it if it does 1386 * not exist. Will not return <code>null</code>. 1387 * 1388 * <p> 1389 * <b>Definition:</b> 1390 * A reference to the entity that is a member of the group. Must be consistent with Group.type 1391 * </p> 1392 */ 1393 public ResourceReferenceDt getEntity() { 1394 if (myEntity == null) { 1395 myEntity = new ResourceReferenceDt(); 1396 } 1397 return myEntity; 1398 } 1399 1400 /** 1401 * Sets the value(s) for <b>entity</b> () 1402 * 1403 * <p> 1404 * <b>Definition:</b> 1405 * A reference to the entity that is a member of the group. Must be consistent with Group.type 1406 * </p> 1407 */ 1408 public Member setEntity(ResourceReferenceDt theValue) { 1409 myEntity = theValue; 1410 return this; 1411 } 1412 1413 1414 1415 1416 /** 1417 * Gets the value(s) for <b>period</b> (). 1418 * creating it if it does 1419 * not exist. Will not return <code>null</code>. 1420 * 1421 * <p> 1422 * <b>Definition:</b> 1423 * The period that the member was in the group, if known 1424 * </p> 1425 */ 1426 public PeriodDt getPeriod() { 1427 if (myPeriod == null) { 1428 myPeriod = new PeriodDt(); 1429 } 1430 return myPeriod; 1431 } 1432 1433 /** 1434 * Sets the value(s) for <b>period</b> () 1435 * 1436 * <p> 1437 * <b>Definition:</b> 1438 * The period that the member was in the group, if known 1439 * </p> 1440 */ 1441 public Member setPeriod(PeriodDt theValue) { 1442 myPeriod = theValue; 1443 return this; 1444 } 1445 1446 1447 1448 1449 /** 1450 * Gets the value(s) for <b>inactive</b> (). 1451 * creating it if it does 1452 * not exist. Will not return <code>null</code>. 1453 * 1454 * <p> 1455 * <b>Definition:</b> 1456 * A flag to indicate that the member is no longer in the group, but previously may have been a member 1457 * </p> 1458 */ 1459 public BooleanDt getInactiveElement() { 1460 if (myInactive == null) { 1461 myInactive = new BooleanDt(); 1462 } 1463 return myInactive; 1464 } 1465 1466 1467 /** 1468 * Gets the value(s) for <b>inactive</b> (). 1469 * creating it if it does 1470 * not exist. Will not return <code>null</code>. 1471 * 1472 * <p> 1473 * <b>Definition:</b> 1474 * A flag to indicate that the member is no longer in the group, but previously may have been a member 1475 * </p> 1476 */ 1477 public Boolean getInactive() { 1478 return getInactiveElement().getValue(); 1479 } 1480 1481 /** 1482 * Sets the value(s) for <b>inactive</b> () 1483 * 1484 * <p> 1485 * <b>Definition:</b> 1486 * A flag to indicate that the member is no longer in the group, but previously may have been a member 1487 * </p> 1488 */ 1489 public Member setInactive(BooleanDt theValue) { 1490 myInactive = theValue; 1491 return this; 1492 } 1493 1494 1495 1496 /** 1497 * Sets the value for <b>inactive</b> () 1498 * 1499 * <p> 1500 * <b>Definition:</b> 1501 * A flag to indicate that the member is no longer in the group, but previously may have been a member 1502 * </p> 1503 */ 1504 public Member setInactive( boolean theBoolean) { 1505 myInactive = new BooleanDt(theBoolean); 1506 return this; 1507 } 1508 1509 1510 1511 1512 } 1513 1514 1515 1516 1517 @Override 1518 public String getResourceName() { 1519 return "Group"; 1520 } 1521 1522 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1523 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1524 } 1525 1526 1527}