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>DataElement</b> Resource 320 * () 321 * 322 * <p> 323 * <b>Definition:</b> 324 * The formal description of a single piece of information that can be gathered and reported. 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/DataElement">http://hl7.org/fhir/profiles/DataElement</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="DataElement", profile="http://hl7.org/fhir/profiles/DataElement", id="dataelement") 339public class DataElement extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource { 341 342 /** 343 * Search parameter constant for <b>identifier</b> 344 * <p> 345 * Description: <b>The identifier of the data element</b><br> 346 * Type: <b>token</b><br> 347 * Path: <b>DataElement.identifier</b><br> 348 * </p> 349 */ 350 @SearchParamDefinition(name="identifier", path="DataElement.identifier", description="The identifier of the data element", type="token" ) 351 public static final String SP_IDENTIFIER = "identifier"; 352 353 /** 354 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 355 * <p> 356 * Description: <b>The identifier of the data element</b><br> 357 * Type: <b>token</b><br> 358 * Path: <b>DataElement.identifier</b><br> 359 * </p> 360 */ 361 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 362 363 /** 364 * Search parameter constant for <b>version</b> 365 * <p> 366 * Description: <b>The version identifier of the data element</b><br> 367 * Type: <b>string</b><br> 368 * Path: <b>DataElement.version</b><br> 369 * </p> 370 */ 371 @SearchParamDefinition(name="version", path="DataElement.version", description="The version identifier of the data element", type="string" ) 372 public static final String SP_VERSION = "version"; 373 374 /** 375 * <b>Fluent Client</b> search parameter constant for <b>version</b> 376 * <p> 377 * Description: <b>The version identifier of the data element</b><br> 378 * Type: <b>string</b><br> 379 * Path: <b>DataElement.version</b><br> 380 * </p> 381 */ 382 public static final StringClientParam VERSION = new StringClientParam(SP_VERSION); 383 384 /** 385 * Search parameter constant for <b>name</b> 386 * <p> 387 * Description: <b>Name of the data element</b><br> 388 * Type: <b>string</b><br> 389 * Path: <b>DataElement.name</b><br> 390 * </p> 391 */ 392 @SearchParamDefinition(name="name", path="DataElement.name", description="Name of the data element", type="string" ) 393 public static final String SP_NAME = "name"; 394 395 /** 396 * <b>Fluent Client</b> search parameter constant for <b>name</b> 397 * <p> 398 * Description: <b>Name of the data element</b><br> 399 * Type: <b>string</b><br> 400 * Path: <b>DataElement.name</b><br> 401 * </p> 402 */ 403 public static final StringClientParam NAME = new StringClientParam(SP_NAME); 404 405 /** 406 * Search parameter constant for <b>publisher</b> 407 * <p> 408 * Description: <b>Name of the publisher of the data element</b><br> 409 * Type: <b>string</b><br> 410 * Path: <b>DataElement.publisher</b><br> 411 * </p> 412 */ 413 @SearchParamDefinition(name="publisher", path="DataElement.publisher", description="Name of the publisher of the data element", type="string" ) 414 public static final String SP_PUBLISHER = "publisher"; 415 416 /** 417 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 418 * <p> 419 * Description: <b>Name of the publisher of the data element</b><br> 420 * Type: <b>string</b><br> 421 * Path: <b>DataElement.publisher</b><br> 422 * </p> 423 */ 424 public static final StringClientParam PUBLISHER = new StringClientParam(SP_PUBLISHER); 425 426 /** 427 * Search parameter constant for <b>description</b> 428 * <p> 429 * Description: <b>Text search in the description of the data element. This corresponds to the definition of the first DataElement.element.</b><br> 430 * Type: <b>string</b><br> 431 * Path: <b>DataElement.element.definition</b><br> 432 * </p> 433 */ 434 @SearchParamDefinition(name="description", path="DataElement.element.definition", description="Text search in the description of the data element. This corresponds to the definition of the first DataElement.element.", type="string" ) 435 public static final String SP_DESCRIPTION = "description"; 436 437 /** 438 * <b>Fluent Client</b> search parameter constant for <b>description</b> 439 * <p> 440 * Description: <b>Text search in the description of the data element. This corresponds to the definition of the first DataElement.element.</b><br> 441 * Type: <b>string</b><br> 442 * Path: <b>DataElement.element.definition</b><br> 443 * </p> 444 */ 445 public static final StringClientParam DESCRIPTION = new StringClientParam(SP_DESCRIPTION); 446 447 /** 448 * Search parameter constant for <b>status</b> 449 * <p> 450 * Description: <b>The current status of the data element</b><br> 451 * Type: <b>token</b><br> 452 * Path: <b>DataElement.status</b><br> 453 * </p> 454 */ 455 @SearchParamDefinition(name="status", path="DataElement.status", description="The current status of the data element", type="token" ) 456 public static final String SP_STATUS = "status"; 457 458 /** 459 * <b>Fluent Client</b> search parameter constant for <b>status</b> 460 * <p> 461 * Description: <b>The current status of the data element</b><br> 462 * Type: <b>token</b><br> 463 * Path: <b>DataElement.status</b><br> 464 * </p> 465 */ 466 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 467 468 /** 469 * Search parameter constant for <b>date</b> 470 * <p> 471 * Description: <b>The data element publication date</b><br> 472 * Type: <b>date</b><br> 473 * Path: <b>DataElement.date</b><br> 474 * </p> 475 */ 476 @SearchParamDefinition(name="date", path="DataElement.date", description="The data element publication date", type="date" ) 477 public static final String SP_DATE = "date"; 478 479 /** 480 * <b>Fluent Client</b> search parameter constant for <b>date</b> 481 * <p> 482 * Description: <b>The data element publication date</b><br> 483 * Type: <b>date</b><br> 484 * Path: <b>DataElement.date</b><br> 485 * </p> 486 */ 487 public static final DateClientParam DATE = new DateClientParam(SP_DATE); 488 489 /** 490 * Search parameter constant for <b>code</b> 491 * <p> 492 * Description: <b>A code for the data element (server may choose to do subsumption)</b><br> 493 * Type: <b>token</b><br> 494 * Path: <b>DataElement.element.code</b><br> 495 * </p> 496 */ 497 @SearchParamDefinition(name="code", path="DataElement.element.code", description="A code for the data element (server may choose to do subsumption)", type="token" ) 498 public static final String SP_CODE = "code"; 499 500 /** 501 * <b>Fluent Client</b> search parameter constant for <b>code</b> 502 * <p> 503 * Description: <b>A code for the data element (server may choose to do subsumption)</b><br> 504 * Type: <b>token</b><br> 505 * Path: <b>DataElement.element.code</b><br> 506 * </p> 507 */ 508 public static final TokenClientParam CODE = new TokenClientParam(SP_CODE); 509 510 /** 511 * Search parameter constant for <b>context</b> 512 * <p> 513 * Description: <b>A use context assigned to the data element</b><br> 514 * Type: <b>token</b><br> 515 * Path: <b>DataElement.useContext</b><br> 516 * </p> 517 */ 518 @SearchParamDefinition(name="context", path="DataElement.useContext", description="A use context assigned to the data element", type="token" ) 519 public static final String SP_CONTEXT = "context"; 520 521 /** 522 * <b>Fluent Client</b> search parameter constant for <b>context</b> 523 * <p> 524 * Description: <b>A use context assigned to the data element</b><br> 525 * Type: <b>token</b><br> 526 * Path: <b>DataElement.useContext</b><br> 527 * </p> 528 */ 529 public static final TokenClientParam CONTEXT = new TokenClientParam(SP_CONTEXT); 530 531 /** 532 * Search parameter constant for <b>url</b> 533 * <p> 534 * Description: <b>The official URL for the data element</b><br> 535 * Type: <b>uri</b><br> 536 * Path: <b>DataElement.url</b><br> 537 * </p> 538 */ 539 @SearchParamDefinition(name="url", path="DataElement.url", description="The official URL for the data element", type="uri" ) 540 public static final String SP_URL = "url"; 541 542 /** 543 * <b>Fluent Client</b> search parameter constant for <b>url</b> 544 * <p> 545 * Description: <b>The official URL for the data element</b><br> 546 * Type: <b>uri</b><br> 547 * Path: <b>DataElement.url</b><br> 548 * </p> 549 */ 550 public static final UriClientParam URL = new UriClientParam(SP_URL); 551 552 /** 553 * Search parameter constant for <b>stringency</b> 554 * <p> 555 * Description: <b>The stringency of the data element definition</b><br> 556 * Type: <b>token</b><br> 557 * Path: <b>DataElement.stringency</b><br> 558 * </p> 559 */ 560 @SearchParamDefinition(name="stringency", path="DataElement.stringency", description="The stringency of the data element definition", type="token" ) 561 public static final String SP_STRINGENCY = "stringency"; 562 563 /** 564 * <b>Fluent Client</b> search parameter constant for <b>stringency</b> 565 * <p> 566 * Description: <b>The stringency of the data element definition</b><br> 567 * Type: <b>token</b><br> 568 * Path: <b>DataElement.stringency</b><br> 569 * </p> 570 */ 571 public static final TokenClientParam STRINGENCY = new TokenClientParam(SP_STRINGENCY); 572 573 574 575 @Child(name="url", type=UriDt.class, order=0, min=0, max=1, summary=true, modifier=false) 576 @Description( 577 shortDefinition="", 578 formalDefinition="An absolute URL that is used to identify this data element when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this data element is (or will be) published" 579 ) 580 private UriDt myUrl; 581 582 @Child(name="identifier", type=IdentifierDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 583 @Description( 584 shortDefinition="", 585 formalDefinition="Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance." 586 ) 587 private java.util.List<IdentifierDt> myIdentifier; 588 589 @Child(name="version", type=StringDt.class, order=2, min=0, max=1, summary=true, modifier=false) 590 @Description( 591 shortDefinition="", 592 formalDefinition="The identifier that is used to identify this version of the data element when it is referenced in a StructureDefinition, Questionnaire or instance. This is an arbitrary value managed by the definition author manually." 593 ) 594 private StringDt myVersion; 595 596 @Child(name="name", type=StringDt.class, order=3, min=0, max=1, summary=true, modifier=false) 597 @Description( 598 shortDefinition="", 599 formalDefinition="The term used by humans to refer to the data element. Should ideally be unique within the context in which the data element is expected to be used." 600 ) 601 private StringDt myName; 602 603 @Child(name="status", type=CodeDt.class, order=4, min=1, max=1, summary=true, modifier=false) 604 @Description( 605 shortDefinition="", 606 formalDefinition="The status of the data element" 607 ) 608 private BoundCodeDt<ConformanceResourceStatusEnum> myStatus; 609 610 @Child(name="experimental", type=BooleanDt.class, order=5, min=0, max=1, summary=true, modifier=false) 611 @Description( 612 shortDefinition="", 613 formalDefinition="A flag to indicate that this search data element definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage" 614 ) 615 private BooleanDt myExperimental; 616 617 @Child(name="publisher", type=StringDt.class, order=6, min=0, max=1, summary=true, modifier=false) 618 @Description( 619 shortDefinition="", 620 formalDefinition="The name of the individual or organization that published the data element" 621 ) 622 private StringDt myPublisher; 623 624 @Child(name="contact", order=7, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 625 @Description( 626 shortDefinition="", 627 formalDefinition="Contacts to assist a user in finding and communicating with the publisher" 628 ) 629 private java.util.List<Contact> myContact; 630 631 @Child(name="date", type=DateTimeDt.class, order=8, min=0, max=1, summary=true, modifier=false) 632 @Description( 633 shortDefinition="", 634 formalDefinition="The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes" 635 ) 636 private DateTimeDt myDate; 637 638 @Child(name="useContext", type=CodeableConceptDt.class, order=9, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 639 @Description( 640 shortDefinition="", 641 formalDefinition="The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions." 642 ) 643 private java.util.List<CodeableConceptDt> myUseContext; 644 645 @Child(name="copyright", type=StringDt.class, order=10, min=0, max=1, summary=false, modifier=false) 646 @Description( 647 shortDefinition="", 648 formalDefinition="A copyright statement relating to the definition of the data element. Copyright statements are generally legal restrictions on the use and publishing of the details of the definition of the data element" 649 ) 650 private StringDt myCopyright; 651 652 @Child(name="stringency", type=CodeDt.class, order=11, min=0, max=1, summary=true, modifier=false) 653 @Description( 654 shortDefinition="", 655 formalDefinition="Identifies how precise the data element is in its definition" 656 ) 657 private BoundCodeDt<DataElementStringencyEnum> myStringency; 658 659 @Child(name="mapping", order=12, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 660 @Description( 661 shortDefinition="", 662 formalDefinition="Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with" 663 ) 664 private java.util.List<Mapping> myMapping; 665 666 @Child(name="element", type=ElementDefinitionDt.class, order=13, min=1, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 667 @Description( 668 shortDefinition="", 669 formalDefinition="Defines the structure, type, allowed values and other constraining characteristics of the data element" 670 ) 671 private java.util.List<ElementDefinitionDt> myElement; 672 673 674 @Override 675 public boolean isEmpty() { 676 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myUrl, myIdentifier, myVersion, myName, myStatus, myExperimental, myPublisher, myContact, myDate, myUseContext, myCopyright, myStringency, myMapping, myElement); 677 } 678 679 @Override 680 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 681 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myUrl, myIdentifier, myVersion, myName, myStatus, myExperimental, myPublisher, myContact, myDate, myUseContext, myCopyright, myStringency, myMapping, myElement); 682 } 683 684 /** 685 * Gets the value(s) for <b>url</b> (). 686 * creating it if it does 687 * not exist. Will not return <code>null</code>. 688 * 689 * <p> 690 * <b>Definition:</b> 691 * An absolute URL that is used to identify this data element when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this data element is (or will be) published 692 * </p> 693 */ 694 public UriDt getUrlElement() { 695 if (myUrl == null) { 696 myUrl = new UriDt(); 697 } 698 return myUrl; 699 } 700 701 702 /** 703 * Gets the value(s) for <b>url</b> (). 704 * creating it if it does 705 * not exist. Will not return <code>null</code>. 706 * 707 * <p> 708 * <b>Definition:</b> 709 * An absolute URL that is used to identify this data element when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this data element is (or will be) published 710 * </p> 711 */ 712 public String getUrl() { 713 return getUrlElement().getValue(); 714 } 715 716 /** 717 * Sets the value(s) for <b>url</b> () 718 * 719 * <p> 720 * <b>Definition:</b> 721 * An absolute URL that is used to identify this data element when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this data element is (or will be) published 722 * </p> 723 */ 724 public DataElement setUrl(UriDt theValue) { 725 myUrl = theValue; 726 return this; 727 } 728 729 730 731 /** 732 * Sets the value for <b>url</b> () 733 * 734 * <p> 735 * <b>Definition:</b> 736 * An absolute URL that is used to identify this data element when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this data element is (or will be) published 737 * </p> 738 */ 739 public DataElement setUrl( String theUri) { 740 myUrl = new UriDt(theUri); 741 return this; 742 } 743 744 745 /** 746 * Gets the value(s) for <b>identifier</b> (). 747 * creating it if it does 748 * not exist. Will not return <code>null</code>. 749 * 750 * <p> 751 * <b>Definition:</b> 752 * Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance. 753 * </p> 754 */ 755 public java.util.List<IdentifierDt> getIdentifier() { 756 if (myIdentifier == null) { 757 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 758 } 759 return myIdentifier; 760 } 761 762 /** 763 * Sets the value(s) for <b>identifier</b> () 764 * 765 * <p> 766 * <b>Definition:</b> 767 * Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance. 768 * </p> 769 */ 770 public DataElement setIdentifier(java.util.List<IdentifierDt> theValue) { 771 myIdentifier = theValue; 772 return this; 773 } 774 775 776 777 /** 778 * Adds and returns a new value for <b>identifier</b> () 779 * 780 * <p> 781 * <b>Definition:</b> 782 * Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance. 783 * </p> 784 */ 785 public IdentifierDt addIdentifier() { 786 IdentifierDt newType = new IdentifierDt(); 787 getIdentifier().add(newType); 788 return newType; 789 } 790 791 /** 792 * Adds a given new value for <b>identifier</b> () 793 * 794 * <p> 795 * <b>Definition:</b> 796 * Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance. 797 * </p> 798 * @param theValue The identifier to add (must not be <code>null</code>) 799 */ 800 public DataElement addIdentifier(IdentifierDt theValue) { 801 if (theValue == null) { 802 throw new NullPointerException("theValue must not be null"); 803 } 804 getIdentifier().add(theValue); 805 return this; 806 } 807 808 /** 809 * Gets the first repetition for <b>identifier</b> (), 810 * creating it if it does not already exist. 811 * 812 * <p> 813 * <b>Definition:</b> 814 * Formal identifier that is used to identify this data element when it is represented in other formats, or referenced in a specification, model, design or an instance. 815 * </p> 816 */ 817 public IdentifierDt getIdentifierFirstRep() { 818 if (getIdentifier().isEmpty()) { 819 return addIdentifier(); 820 } 821 return getIdentifier().get(0); 822 } 823 824 /** 825 * Gets the value(s) for <b>version</b> (). 826 * creating it if it does 827 * not exist. Will not return <code>null</code>. 828 * 829 * <p> 830 * <b>Definition:</b> 831 * The identifier that is used to identify this version of the data element when it is referenced in a StructureDefinition, Questionnaire or instance. This is an arbitrary value managed by the definition author manually. 832 * </p> 833 */ 834 public StringDt getVersionElement() { 835 if (myVersion == null) { 836 myVersion = new StringDt(); 837 } 838 return myVersion; 839 } 840 841 842 /** 843 * Gets the value(s) for <b>version</b> (). 844 * creating it if it does 845 * not exist. Will not return <code>null</code>. 846 * 847 * <p> 848 * <b>Definition:</b> 849 * The identifier that is used to identify this version of the data element when it is referenced in a StructureDefinition, Questionnaire or instance. This is an arbitrary value managed by the definition author manually. 850 * </p> 851 */ 852 public String getVersion() { 853 return getVersionElement().getValue(); 854 } 855 856 /** 857 * Sets the value(s) for <b>version</b> () 858 * 859 * <p> 860 * <b>Definition:</b> 861 * The identifier that is used to identify this version of the data element when it is referenced in a StructureDefinition, Questionnaire or instance. This is an arbitrary value managed by the definition author manually. 862 * </p> 863 */ 864 public DataElement setVersion(StringDt theValue) { 865 myVersion = theValue; 866 return this; 867 } 868 869 870 871 /** 872 * Sets the value for <b>version</b> () 873 * 874 * <p> 875 * <b>Definition:</b> 876 * The identifier that is used to identify this version of the data element when it is referenced in a StructureDefinition, Questionnaire or instance. This is an arbitrary value managed by the definition author manually. 877 * </p> 878 */ 879 public DataElement setVersion( String theString) { 880 myVersion = new StringDt(theString); 881 return this; 882 } 883 884 885 /** 886 * Gets the value(s) for <b>name</b> (). 887 * creating it if it does 888 * not exist. Will not return <code>null</code>. 889 * 890 * <p> 891 * <b>Definition:</b> 892 * The term used by humans to refer to the data element. Should ideally be unique within the context in which the data element is expected to be used. 893 * </p> 894 */ 895 public StringDt getNameElement() { 896 if (myName == null) { 897 myName = new StringDt(); 898 } 899 return myName; 900 } 901 902 903 /** 904 * Gets the value(s) for <b>name</b> (). 905 * creating it if it does 906 * not exist. Will not return <code>null</code>. 907 * 908 * <p> 909 * <b>Definition:</b> 910 * The term used by humans to refer to the data element. Should ideally be unique within the context in which the data element is expected to be used. 911 * </p> 912 */ 913 public String getName() { 914 return getNameElement().getValue(); 915 } 916 917 /** 918 * Sets the value(s) for <b>name</b> () 919 * 920 * <p> 921 * <b>Definition:</b> 922 * The term used by humans to refer to the data element. Should ideally be unique within the context in which the data element is expected to be used. 923 * </p> 924 */ 925 public DataElement setName(StringDt theValue) { 926 myName = theValue; 927 return this; 928 } 929 930 931 932 /** 933 * Sets the value for <b>name</b> () 934 * 935 * <p> 936 * <b>Definition:</b> 937 * The term used by humans to refer to the data element. Should ideally be unique within the context in which the data element is expected to be used. 938 * </p> 939 */ 940 public DataElement setName( String theString) { 941 myName = new StringDt(theString); 942 return this; 943 } 944 945 946 /** 947 * Gets the value(s) for <b>status</b> (). 948 * creating it if it does 949 * not exist. Will not return <code>null</code>. 950 * 951 * <p> 952 * <b>Definition:</b> 953 * The status of the data element 954 * </p> 955 */ 956 public BoundCodeDt<ConformanceResourceStatusEnum> getStatusElement() { 957 if (myStatus == null) { 958 myStatus = new BoundCodeDt<ConformanceResourceStatusEnum>(ConformanceResourceStatusEnum.VALUESET_BINDER); 959 } 960 return myStatus; 961 } 962 963 964 /** 965 * Gets the value(s) for <b>status</b> (). 966 * creating it if it does 967 * not exist. Will not return <code>null</code>. 968 * 969 * <p> 970 * <b>Definition:</b> 971 * The status of the data element 972 * </p> 973 */ 974 public String getStatus() { 975 return getStatusElement().getValue(); 976 } 977 978 /** 979 * Sets the value(s) for <b>status</b> () 980 * 981 * <p> 982 * <b>Definition:</b> 983 * The status of the data element 984 * </p> 985 */ 986 public DataElement setStatus(BoundCodeDt<ConformanceResourceStatusEnum> theValue) { 987 myStatus = theValue; 988 return this; 989 } 990 991 992 993 /** 994 * Sets the value(s) for <b>status</b> () 995 * 996 * <p> 997 * <b>Definition:</b> 998 * The status of the data element 999 * </p> 1000 */ 1001 public DataElement setStatus(ConformanceResourceStatusEnum theValue) { 1002 setStatus(new BoundCodeDt<ConformanceResourceStatusEnum>(ConformanceResourceStatusEnum.VALUESET_BINDER, theValue)); 1003 1004/* 1005 getStatusElement().setValueAsEnum(theValue); 1006*/ 1007 return this; 1008 } 1009 1010 1011 /** 1012 * Gets the value(s) for <b>experimental</b> (). 1013 * creating it if it does 1014 * not exist. Will not return <code>null</code>. 1015 * 1016 * <p> 1017 * <b>Definition:</b> 1018 * A flag to indicate that this search data element definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1019 * </p> 1020 */ 1021 public BooleanDt getExperimentalElement() { 1022 if (myExperimental == null) { 1023 myExperimental = new BooleanDt(); 1024 } 1025 return myExperimental; 1026 } 1027 1028 1029 /** 1030 * Gets the value(s) for <b>experimental</b> (). 1031 * creating it if it does 1032 * not exist. Will not return <code>null</code>. 1033 * 1034 * <p> 1035 * <b>Definition:</b> 1036 * A flag to indicate that this search data element definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1037 * </p> 1038 */ 1039 public Boolean getExperimental() { 1040 return getExperimentalElement().getValue(); 1041 } 1042 1043 /** 1044 * Sets the value(s) for <b>experimental</b> () 1045 * 1046 * <p> 1047 * <b>Definition:</b> 1048 * A flag to indicate that this search data element definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1049 * </p> 1050 */ 1051 public DataElement setExperimental(BooleanDt theValue) { 1052 myExperimental = theValue; 1053 return this; 1054 } 1055 1056 1057 1058 /** 1059 * Sets the value for <b>experimental</b> () 1060 * 1061 * <p> 1062 * <b>Definition:</b> 1063 * A flag to indicate that this search data element definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1064 * </p> 1065 */ 1066 public DataElement setExperimental( boolean theBoolean) { 1067 myExperimental = new BooleanDt(theBoolean); 1068 return this; 1069 } 1070 1071 1072 /** 1073 * Gets the value(s) for <b>publisher</b> (). 1074 * creating it if it does 1075 * not exist. Will not return <code>null</code>. 1076 * 1077 * <p> 1078 * <b>Definition:</b> 1079 * The name of the individual or organization that published the data element 1080 * </p> 1081 */ 1082 public StringDt getPublisherElement() { 1083 if (myPublisher == null) { 1084 myPublisher = new StringDt(); 1085 } 1086 return myPublisher; 1087 } 1088 1089 1090 /** 1091 * Gets the value(s) for <b>publisher</b> (). 1092 * creating it if it does 1093 * not exist. Will not return <code>null</code>. 1094 * 1095 * <p> 1096 * <b>Definition:</b> 1097 * The name of the individual or organization that published the data element 1098 * </p> 1099 */ 1100 public String getPublisher() { 1101 return getPublisherElement().getValue(); 1102 } 1103 1104 /** 1105 * Sets the value(s) for <b>publisher</b> () 1106 * 1107 * <p> 1108 * <b>Definition:</b> 1109 * The name of the individual or organization that published the data element 1110 * </p> 1111 */ 1112 public DataElement setPublisher(StringDt theValue) { 1113 myPublisher = theValue; 1114 return this; 1115 } 1116 1117 1118 1119 /** 1120 * Sets the value for <b>publisher</b> () 1121 * 1122 * <p> 1123 * <b>Definition:</b> 1124 * The name of the individual or organization that published the data element 1125 * </p> 1126 */ 1127 public DataElement setPublisher( String theString) { 1128 myPublisher = new StringDt(theString); 1129 return this; 1130 } 1131 1132 1133 /** 1134 * Gets the value(s) for <b>contact</b> (). 1135 * creating it if it does 1136 * not exist. Will not return <code>null</code>. 1137 * 1138 * <p> 1139 * <b>Definition:</b> 1140 * Contacts to assist a user in finding and communicating with the publisher 1141 * </p> 1142 */ 1143 public java.util.List<Contact> getContact() { 1144 if (myContact == null) { 1145 myContact = new java.util.ArrayList<Contact>(); 1146 } 1147 return myContact; 1148 } 1149 1150 /** 1151 * Sets the value(s) for <b>contact</b> () 1152 * 1153 * <p> 1154 * <b>Definition:</b> 1155 * Contacts to assist a user in finding and communicating with the publisher 1156 * </p> 1157 */ 1158 public DataElement setContact(java.util.List<Contact> theValue) { 1159 myContact = theValue; 1160 return this; 1161 } 1162 1163 1164 1165 /** 1166 * Adds and returns a new value for <b>contact</b> () 1167 * 1168 * <p> 1169 * <b>Definition:</b> 1170 * Contacts to assist a user in finding and communicating with the publisher 1171 * </p> 1172 */ 1173 public Contact addContact() { 1174 Contact newType = new Contact(); 1175 getContact().add(newType); 1176 return newType; 1177 } 1178 1179 /** 1180 * Adds a given new value for <b>contact</b> () 1181 * 1182 * <p> 1183 * <b>Definition:</b> 1184 * Contacts to assist a user in finding and communicating with the publisher 1185 * </p> 1186 * @param theValue The contact to add (must not be <code>null</code>) 1187 */ 1188 public DataElement addContact(Contact theValue) { 1189 if (theValue == null) { 1190 throw new NullPointerException("theValue must not be null"); 1191 } 1192 getContact().add(theValue); 1193 return this; 1194 } 1195 1196 /** 1197 * Gets the first repetition for <b>contact</b> (), 1198 * creating it if it does not already exist. 1199 * 1200 * <p> 1201 * <b>Definition:</b> 1202 * Contacts to assist a user in finding and communicating with the publisher 1203 * </p> 1204 */ 1205 public Contact getContactFirstRep() { 1206 if (getContact().isEmpty()) { 1207 return addContact(); 1208 } 1209 return getContact().get(0); 1210 } 1211 1212 /** 1213 * Gets the value(s) for <b>date</b> (). 1214 * creating it if it does 1215 * not exist. Will not return <code>null</code>. 1216 * 1217 * <p> 1218 * <b>Definition:</b> 1219 * The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes 1220 * </p> 1221 */ 1222 public DateTimeDt getDateElement() { 1223 if (myDate == null) { 1224 myDate = new DateTimeDt(); 1225 } 1226 return myDate; 1227 } 1228 1229 1230 /** 1231 * Gets the value(s) for <b>date</b> (). 1232 * creating it if it does 1233 * not exist. Will not return <code>null</code>. 1234 * 1235 * <p> 1236 * <b>Definition:</b> 1237 * The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes 1238 * </p> 1239 */ 1240 public Date getDate() { 1241 return getDateElement().getValue(); 1242 } 1243 1244 /** 1245 * Sets the value(s) for <b>date</b> () 1246 * 1247 * <p> 1248 * <b>Definition:</b> 1249 * The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes 1250 * </p> 1251 */ 1252 public DataElement setDate(DateTimeDt theValue) { 1253 myDate = theValue; 1254 return this; 1255 } 1256 1257 1258 1259 /** 1260 * Sets the value for <b>date</b> () 1261 * 1262 * <p> 1263 * <b>Definition:</b> 1264 * The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes 1265 * </p> 1266 */ 1267 public DataElement setDate( Date theDate, TemporalPrecisionEnum thePrecision) { 1268 myDate = new DateTimeDt(theDate, thePrecision); 1269 return this; 1270 } 1271 1272 /** 1273 * Sets the value for <b>date</b> () 1274 * 1275 * <p> 1276 * <b>Definition:</b> 1277 * The date this version of the data element was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the data element changes 1278 * </p> 1279 */ 1280 public DataElement setDateWithSecondsPrecision( Date theDate) { 1281 myDate = new DateTimeDt(theDate); 1282 return this; 1283 } 1284 1285 1286 /** 1287 * Gets the value(s) for <b>useContext</b> (). 1288 * creating it if it does 1289 * not exist. Will not return <code>null</code>. 1290 * 1291 * <p> 1292 * <b>Definition:</b> 1293 * The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions. 1294 * </p> 1295 */ 1296 public java.util.List<CodeableConceptDt> getUseContext() { 1297 if (myUseContext == null) { 1298 myUseContext = new java.util.ArrayList<CodeableConceptDt>(); 1299 } 1300 return myUseContext; 1301 } 1302 1303 /** 1304 * Sets the value(s) for <b>useContext</b> () 1305 * 1306 * <p> 1307 * <b>Definition:</b> 1308 * The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions. 1309 * </p> 1310 */ 1311 public DataElement setUseContext(java.util.List<CodeableConceptDt> theValue) { 1312 myUseContext = theValue; 1313 return this; 1314 } 1315 1316 1317 1318 /** 1319 * Adds and returns a new value for <b>useContext</b> () 1320 * 1321 * <p> 1322 * <b>Definition:</b> 1323 * The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions. 1324 * </p> 1325 */ 1326 public CodeableConceptDt addUseContext() { 1327 CodeableConceptDt newType = new CodeableConceptDt(); 1328 getUseContext().add(newType); 1329 return newType; 1330 } 1331 1332 /** 1333 * Adds a given new value for <b>useContext</b> () 1334 * 1335 * <p> 1336 * <b>Definition:</b> 1337 * The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions. 1338 * </p> 1339 * @param theValue The useContext to add (must not be <code>null</code>) 1340 */ 1341 public DataElement addUseContext(CodeableConceptDt theValue) { 1342 if (theValue == null) { 1343 throw new NullPointerException("theValue must not be null"); 1344 } 1345 getUseContext().add(theValue); 1346 return this; 1347 } 1348 1349 /** 1350 * Gets the first repetition for <b>useContext</b> (), 1351 * creating it if it does not already exist. 1352 * 1353 * <p> 1354 * <b>Definition:</b> 1355 * The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of data element definitions. 1356 * </p> 1357 */ 1358 public CodeableConceptDt getUseContextFirstRep() { 1359 if (getUseContext().isEmpty()) { 1360 return addUseContext(); 1361 } 1362 return getUseContext().get(0); 1363 } 1364 1365 /** 1366 * Gets the value(s) for <b>copyright</b> (). 1367 * creating it if it does 1368 * not exist. Will not return <code>null</code>. 1369 * 1370 * <p> 1371 * <b>Definition:</b> 1372 * A copyright statement relating to the definition of the data element. Copyright statements are generally legal restrictions on the use and publishing of the details of the definition of the data element 1373 * </p> 1374 */ 1375 public StringDt getCopyrightElement() { 1376 if (myCopyright == null) { 1377 myCopyright = new StringDt(); 1378 } 1379 return myCopyright; 1380 } 1381 1382 1383 /** 1384 * Gets the value(s) for <b>copyright</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 copyright statement relating to the definition of the data element. Copyright statements are generally legal restrictions on the use and publishing of the details of the definition of the data element 1391 * </p> 1392 */ 1393 public String getCopyright() { 1394 return getCopyrightElement().getValue(); 1395 } 1396 1397 /** 1398 * Sets the value(s) for <b>copyright</b> () 1399 * 1400 * <p> 1401 * <b>Definition:</b> 1402 * A copyright statement relating to the definition of the data element. Copyright statements are generally legal restrictions on the use and publishing of the details of the definition of the data element 1403 * </p> 1404 */ 1405 public DataElement setCopyright(StringDt theValue) { 1406 myCopyright = theValue; 1407 return this; 1408 } 1409 1410 1411 1412 /** 1413 * Sets the value for <b>copyright</b> () 1414 * 1415 * <p> 1416 * <b>Definition:</b> 1417 * A copyright statement relating to the definition of the data element. Copyright statements are generally legal restrictions on the use and publishing of the details of the definition of the data element 1418 * </p> 1419 */ 1420 public DataElement setCopyright( String theString) { 1421 myCopyright = new StringDt(theString); 1422 return this; 1423 } 1424 1425 1426 /** 1427 * Gets the value(s) for <b>stringency</b> (). 1428 * creating it if it does 1429 * not exist. Will not return <code>null</code>. 1430 * 1431 * <p> 1432 * <b>Definition:</b> 1433 * Identifies how precise the data element is in its definition 1434 * </p> 1435 */ 1436 public BoundCodeDt<DataElementStringencyEnum> getStringencyElement() { 1437 if (myStringency == null) { 1438 myStringency = new BoundCodeDt<DataElementStringencyEnum>(DataElementStringencyEnum.VALUESET_BINDER); 1439 } 1440 return myStringency; 1441 } 1442 1443 1444 /** 1445 * Gets the value(s) for <b>stringency</b> (). 1446 * creating it if it does 1447 * not exist. Will not return <code>null</code>. 1448 * 1449 * <p> 1450 * <b>Definition:</b> 1451 * Identifies how precise the data element is in its definition 1452 * </p> 1453 */ 1454 public String getStringency() { 1455 return getStringencyElement().getValue(); 1456 } 1457 1458 /** 1459 * Sets the value(s) for <b>stringency</b> () 1460 * 1461 * <p> 1462 * <b>Definition:</b> 1463 * Identifies how precise the data element is in its definition 1464 * </p> 1465 */ 1466 public DataElement setStringency(BoundCodeDt<DataElementStringencyEnum> theValue) { 1467 myStringency = theValue; 1468 return this; 1469 } 1470 1471 1472 1473 /** 1474 * Sets the value(s) for <b>stringency</b> () 1475 * 1476 * <p> 1477 * <b>Definition:</b> 1478 * Identifies how precise the data element is in its definition 1479 * </p> 1480 */ 1481 public DataElement setStringency(DataElementStringencyEnum theValue) { 1482 setStringency(new BoundCodeDt<DataElementStringencyEnum>(DataElementStringencyEnum.VALUESET_BINDER, theValue)); 1483 1484/* 1485 getStringencyElement().setValueAsEnum(theValue); 1486*/ 1487 return this; 1488 } 1489 1490 1491 /** 1492 * Gets the value(s) for <b>mapping</b> (). 1493 * creating it if it does 1494 * not exist. Will not return <code>null</code>. 1495 * 1496 * <p> 1497 * <b>Definition:</b> 1498 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1499 * </p> 1500 */ 1501 public java.util.List<Mapping> getMapping() { 1502 if (myMapping == null) { 1503 myMapping = new java.util.ArrayList<Mapping>(); 1504 } 1505 return myMapping; 1506 } 1507 1508 /** 1509 * Sets the value(s) for <b>mapping</b> () 1510 * 1511 * <p> 1512 * <b>Definition:</b> 1513 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1514 * </p> 1515 */ 1516 public DataElement setMapping(java.util.List<Mapping> theValue) { 1517 myMapping = theValue; 1518 return this; 1519 } 1520 1521 1522 1523 /** 1524 * Adds and returns a new value for <b>mapping</b> () 1525 * 1526 * <p> 1527 * <b>Definition:</b> 1528 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1529 * </p> 1530 */ 1531 public Mapping addMapping() { 1532 Mapping newType = new Mapping(); 1533 getMapping().add(newType); 1534 return newType; 1535 } 1536 1537 /** 1538 * Adds a given new value for <b>mapping</b> () 1539 * 1540 * <p> 1541 * <b>Definition:</b> 1542 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1543 * </p> 1544 * @param theValue The mapping to add (must not be <code>null</code>) 1545 */ 1546 public DataElement addMapping(Mapping theValue) { 1547 if (theValue == null) { 1548 throw new NullPointerException("theValue must not be null"); 1549 } 1550 getMapping().add(theValue); 1551 return this; 1552 } 1553 1554 /** 1555 * Gets the first repetition for <b>mapping</b> (), 1556 * creating it if it does not already exist. 1557 * 1558 * <p> 1559 * <b>Definition:</b> 1560 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1561 * </p> 1562 */ 1563 public Mapping getMappingFirstRep() { 1564 if (getMapping().isEmpty()) { 1565 return addMapping(); 1566 } 1567 return getMapping().get(0); 1568 } 1569 1570 /** 1571 * Gets the value(s) for <b>element</b> (). 1572 * creating it if it does 1573 * not exist. Will not return <code>null</code>. 1574 * 1575 * <p> 1576 * <b>Definition:</b> 1577 * Defines the structure, type, allowed values and other constraining characteristics of the data element 1578 * </p> 1579 */ 1580 public java.util.List<ElementDefinitionDt> getElement() { 1581 if (myElement == null) { 1582 myElement = new java.util.ArrayList<ElementDefinitionDt>(); 1583 } 1584 return myElement; 1585 } 1586 1587 /** 1588 * Sets the value(s) for <b>element</b> () 1589 * 1590 * <p> 1591 * <b>Definition:</b> 1592 * Defines the structure, type, allowed values and other constraining characteristics of the data element 1593 * </p> 1594 */ 1595 public DataElement setElement(java.util.List<ElementDefinitionDt> theValue) { 1596 myElement = theValue; 1597 return this; 1598 } 1599 1600 1601 1602 /** 1603 * Adds and returns a new value for <b>element</b> () 1604 * 1605 * <p> 1606 * <b>Definition:</b> 1607 * Defines the structure, type, allowed values and other constraining characteristics of the data element 1608 * </p> 1609 */ 1610 public ElementDefinitionDt addElement() { 1611 ElementDefinitionDt newType = new ElementDefinitionDt(); 1612 getElement().add(newType); 1613 return newType; 1614 } 1615 1616 /** 1617 * Adds a given new value for <b>element</b> () 1618 * 1619 * <p> 1620 * <b>Definition:</b> 1621 * Defines the structure, type, allowed values and other constraining characteristics of the data element 1622 * </p> 1623 * @param theValue The element to add (must not be <code>null</code>) 1624 */ 1625 public DataElement addElement(ElementDefinitionDt theValue) { 1626 if (theValue == null) { 1627 throw new NullPointerException("theValue must not be null"); 1628 } 1629 getElement().add(theValue); 1630 return this; 1631 } 1632 1633 /** 1634 * Gets the first repetition for <b>element</b> (), 1635 * creating it if it does not already exist. 1636 * 1637 * <p> 1638 * <b>Definition:</b> 1639 * Defines the structure, type, allowed values and other constraining characteristics of the data element 1640 * </p> 1641 */ 1642 public ElementDefinitionDt getElementFirstRep() { 1643 if (getElement().isEmpty()) { 1644 return addElement(); 1645 } 1646 return getElement().get(0); 1647 } 1648 1649 /** 1650 * Block class for child element: <b>DataElement.contact</b> () 1651 * 1652 * <p> 1653 * <b>Definition:</b> 1654 * Contacts to assist a user in finding and communicating with the publisher 1655 * </p> 1656 */ 1657 @Block() 1658 public static class Contact 1659 extends BaseIdentifiableElement implements IResourceBlock { 1660 1661 @Child(name="name", type=StringDt.class, order=0, min=0, max=1, summary=true, modifier=false) 1662 @Description( 1663 shortDefinition="", 1664 formalDefinition="The name of an individual to contact regarding the data element" 1665 ) 1666 private StringDt myName; 1667 1668 @Child(name="telecom", type=ContactPointDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 1669 @Description( 1670 shortDefinition="", 1671 formalDefinition="Contact details for individual (if a name was provided) or the publisher" 1672 ) 1673 private java.util.List<ContactPointDt> myTelecom; 1674 1675 1676 @Override 1677 public boolean isEmpty() { 1678 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myName, myTelecom); 1679 } 1680 1681 @Override 1682 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1683 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myName, myTelecom); 1684 } 1685 1686 /** 1687 * Gets the value(s) for <b>name</b> (). 1688 * creating it if it does 1689 * not exist. Will not return <code>null</code>. 1690 * 1691 * <p> 1692 * <b>Definition:</b> 1693 * The name of an individual to contact regarding the data element 1694 * </p> 1695 */ 1696 public StringDt getNameElement() { 1697 if (myName == null) { 1698 myName = new StringDt(); 1699 } 1700 return myName; 1701 } 1702 1703 1704 /** 1705 * Gets the value(s) for <b>name</b> (). 1706 * creating it if it does 1707 * not exist. Will not return <code>null</code>. 1708 * 1709 * <p> 1710 * <b>Definition:</b> 1711 * The name of an individual to contact regarding the data element 1712 * </p> 1713 */ 1714 public String getName() { 1715 return getNameElement().getValue(); 1716 } 1717 1718 /** 1719 * Sets the value(s) for <b>name</b> () 1720 * 1721 * <p> 1722 * <b>Definition:</b> 1723 * The name of an individual to contact regarding the data element 1724 * </p> 1725 */ 1726 public Contact setName(StringDt theValue) { 1727 myName = theValue; 1728 return this; 1729 } 1730 1731 1732 1733 /** 1734 * Sets the value for <b>name</b> () 1735 * 1736 * <p> 1737 * <b>Definition:</b> 1738 * The name of an individual to contact regarding the data element 1739 * </p> 1740 */ 1741 public Contact setName( String theString) { 1742 myName = new StringDt(theString); 1743 return this; 1744 } 1745 1746 1747 /** 1748 * Gets the value(s) for <b>telecom</b> (). 1749 * creating it if it does 1750 * not exist. Will not return <code>null</code>. 1751 * 1752 * <p> 1753 * <b>Definition:</b> 1754 * Contact details for individual (if a name was provided) or the publisher 1755 * </p> 1756 */ 1757 public java.util.List<ContactPointDt> getTelecom() { 1758 if (myTelecom == null) { 1759 myTelecom = new java.util.ArrayList<ContactPointDt>(); 1760 } 1761 return myTelecom; 1762 } 1763 1764 /** 1765 * Sets the value(s) for <b>telecom</b> () 1766 * 1767 * <p> 1768 * <b>Definition:</b> 1769 * Contact details for individual (if a name was provided) or the publisher 1770 * </p> 1771 */ 1772 public Contact setTelecom(java.util.List<ContactPointDt> theValue) { 1773 myTelecom = theValue; 1774 return this; 1775 } 1776 1777 1778 1779 /** 1780 * Adds and returns a new value for <b>telecom</b> () 1781 * 1782 * <p> 1783 * <b>Definition:</b> 1784 * Contact details for individual (if a name was provided) or the publisher 1785 * </p> 1786 */ 1787 public ContactPointDt addTelecom() { 1788 ContactPointDt newType = new ContactPointDt(); 1789 getTelecom().add(newType); 1790 return newType; 1791 } 1792 1793 /** 1794 * Adds a given new value for <b>telecom</b> () 1795 * 1796 * <p> 1797 * <b>Definition:</b> 1798 * Contact details for individual (if a name was provided) or the publisher 1799 * </p> 1800 * @param theValue The telecom to add (must not be <code>null</code>) 1801 */ 1802 public Contact addTelecom(ContactPointDt theValue) { 1803 if (theValue == null) { 1804 throw new NullPointerException("theValue must not be null"); 1805 } 1806 getTelecom().add(theValue); 1807 return this; 1808 } 1809 1810 /** 1811 * Gets the first repetition for <b>telecom</b> (), 1812 * creating it if it does not already exist. 1813 * 1814 * <p> 1815 * <b>Definition:</b> 1816 * Contact details for individual (if a name was provided) or the publisher 1817 * </p> 1818 */ 1819 public ContactPointDt getTelecomFirstRep() { 1820 if (getTelecom().isEmpty()) { 1821 return addTelecom(); 1822 } 1823 return getTelecom().get(0); 1824 } 1825 1826 1827 1828 } 1829 1830 1831 /** 1832 * Block class for child element: <b>DataElement.mapping</b> () 1833 * 1834 * <p> 1835 * <b>Definition:</b> 1836 * Identifies a specification (other than a terminology) that the elements which make up the DataElement have some correspondence with 1837 * </p> 1838 */ 1839 @Block() 1840 public static class Mapping 1841 extends BaseIdentifiableElement implements IResourceBlock { 1842 1843 @Child(name="identity", type=IdDt.class, order=0, min=1, max=1, summary=false, modifier=false) 1844 @Description( 1845 shortDefinition="", 1846 formalDefinition="An internal id that is used to identify this mapping set when specific mappings are made on a per-element basis" 1847 ) 1848 private IdDt myIdentity; 1849 1850 @Child(name="uri", type=UriDt.class, order=1, min=0, max=1, summary=false, modifier=false) 1851 @Description( 1852 shortDefinition="", 1853 formalDefinition="An absolute URI that identifies the specification that this mapping is expressed to" 1854 ) 1855 private UriDt myUri; 1856 1857 @Child(name="name", type=StringDt.class, order=2, min=0, max=1, summary=false, modifier=false) 1858 @Description( 1859 shortDefinition="", 1860 formalDefinition="A name for the specification that is being mapped to" 1861 ) 1862 private StringDt myName; 1863 1864 @Child(name="comments", type=StringDt.class, order=3, min=0, max=1, summary=false, modifier=false) 1865 @Description( 1866 shortDefinition="", 1867 formalDefinition="Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage" 1868 ) 1869 private StringDt myComments; 1870 1871 1872 @Override 1873 public boolean isEmpty() { 1874 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentity, myUri, myName, myComments); 1875 } 1876 1877 @Override 1878 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1879 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentity, myUri, myName, myComments); 1880 } 1881 1882 /** 1883 * Gets the value(s) for <b>identity</b> (). 1884 * creating it if it does 1885 * not exist. Will not return <code>null</code>. 1886 * 1887 * <p> 1888 * <b>Definition:</b> 1889 * An internal id that is used to identify this mapping set when specific mappings are made on a per-element basis 1890 * </p> 1891 */ 1892 public IdDt getIdentityElement() { 1893 if (myIdentity == null) { 1894 myIdentity = new IdDt(); 1895 } 1896 return myIdentity; 1897 } 1898 1899 1900 /** 1901 * Gets the value(s) for <b>identity</b> (). 1902 * creating it if it does 1903 * not exist. Will not return <code>null</code>. 1904 * 1905 * <p> 1906 * <b>Definition:</b> 1907 * An internal id that is used to identify this mapping set when specific mappings are made on a per-element basis 1908 * </p> 1909 */ 1910 public String getIdentity() { 1911 return getIdentityElement().getValue(); 1912 } 1913 1914 /** 1915 * Sets the value(s) for <b>identity</b> () 1916 * 1917 * <p> 1918 * <b>Definition:</b> 1919 * An internal id that is used to identify this mapping set when specific mappings are made on a per-element basis 1920 * </p> 1921 */ 1922 public Mapping setIdentity(IdDt theValue) { 1923 myIdentity = theValue; 1924 return this; 1925 } 1926 1927 1928 1929 /** 1930 * Sets the value for <b>identity</b> () 1931 * 1932 * <p> 1933 * <b>Definition:</b> 1934 * An internal id that is used to identify this mapping set when specific mappings are made on a per-element basis 1935 * </p> 1936 */ 1937 public Mapping setIdentity( String theId) { 1938 myIdentity = new IdDt(theId); 1939 return this; 1940 } 1941 1942 1943 /** 1944 * Gets the value(s) for <b>uri</b> (). 1945 * creating it if it does 1946 * not exist. Will not return <code>null</code>. 1947 * 1948 * <p> 1949 * <b>Definition:</b> 1950 * An absolute URI that identifies the specification that this mapping is expressed to 1951 * </p> 1952 */ 1953 public UriDt getUriElement() { 1954 if (myUri == null) { 1955 myUri = new UriDt(); 1956 } 1957 return myUri; 1958 } 1959 1960 1961 /** 1962 * Gets the value(s) for <b>uri</b> (). 1963 * creating it if it does 1964 * not exist. Will not return <code>null</code>. 1965 * 1966 * <p> 1967 * <b>Definition:</b> 1968 * An absolute URI that identifies the specification that this mapping is expressed to 1969 * </p> 1970 */ 1971 public String getUri() { 1972 return getUriElement().getValue(); 1973 } 1974 1975 /** 1976 * Sets the value(s) for <b>uri</b> () 1977 * 1978 * <p> 1979 * <b>Definition:</b> 1980 * An absolute URI that identifies the specification that this mapping is expressed to 1981 * </p> 1982 */ 1983 public Mapping setUri(UriDt theValue) { 1984 myUri = theValue; 1985 return this; 1986 } 1987 1988 1989 1990 /** 1991 * Sets the value for <b>uri</b> () 1992 * 1993 * <p> 1994 * <b>Definition:</b> 1995 * An absolute URI that identifies the specification that this mapping is expressed to 1996 * </p> 1997 */ 1998 public Mapping setUri( String theUri) { 1999 myUri = new UriDt(theUri); 2000 return this; 2001 } 2002 2003 2004 /** 2005 * Gets the value(s) for <b>name</b> (). 2006 * creating it if it does 2007 * not exist. Will not return <code>null</code>. 2008 * 2009 * <p> 2010 * <b>Definition:</b> 2011 * A name for the specification that is being mapped to 2012 * </p> 2013 */ 2014 public StringDt getNameElement() { 2015 if (myName == null) { 2016 myName = new StringDt(); 2017 } 2018 return myName; 2019 } 2020 2021 2022 /** 2023 * Gets the value(s) for <b>name</b> (). 2024 * creating it if it does 2025 * not exist. Will not return <code>null</code>. 2026 * 2027 * <p> 2028 * <b>Definition:</b> 2029 * A name for the specification that is being mapped to 2030 * </p> 2031 */ 2032 public String getName() { 2033 return getNameElement().getValue(); 2034 } 2035 2036 /** 2037 * Sets the value(s) for <b>name</b> () 2038 * 2039 * <p> 2040 * <b>Definition:</b> 2041 * A name for the specification that is being mapped to 2042 * </p> 2043 */ 2044 public Mapping setName(StringDt theValue) { 2045 myName = theValue; 2046 return this; 2047 } 2048 2049 2050 2051 /** 2052 * Sets the value for <b>name</b> () 2053 * 2054 * <p> 2055 * <b>Definition:</b> 2056 * A name for the specification that is being mapped to 2057 * </p> 2058 */ 2059 public Mapping setName( String theString) { 2060 myName = new StringDt(theString); 2061 return this; 2062 } 2063 2064 2065 /** 2066 * Gets the value(s) for <b>comments</b> (). 2067 * creating it if it does 2068 * not exist. Will not return <code>null</code>. 2069 * 2070 * <p> 2071 * <b>Definition:</b> 2072 * Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage 2073 * </p> 2074 */ 2075 public StringDt getCommentsElement() { 2076 if (myComments == null) { 2077 myComments = new StringDt(); 2078 } 2079 return myComments; 2080 } 2081 2082 2083 /** 2084 * Gets the value(s) for <b>comments</b> (). 2085 * creating it if it does 2086 * not exist. Will not return <code>null</code>. 2087 * 2088 * <p> 2089 * <b>Definition:</b> 2090 * Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage 2091 * </p> 2092 */ 2093 public String getComments() { 2094 return getCommentsElement().getValue(); 2095 } 2096 2097 /** 2098 * Sets the value(s) for <b>comments</b> () 2099 * 2100 * <p> 2101 * <b>Definition:</b> 2102 * Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage 2103 * </p> 2104 */ 2105 public Mapping setComments(StringDt theValue) { 2106 myComments = theValue; 2107 return this; 2108 } 2109 2110 2111 2112 /** 2113 * Sets the value for <b>comments</b> () 2114 * 2115 * <p> 2116 * <b>Definition:</b> 2117 * Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage 2118 * </p> 2119 */ 2120 public Mapping setComments( String theString) { 2121 myComments = new StringDt(theString); 2122 return this; 2123 } 2124 2125 2126 2127 2128 } 2129 2130 2131 2132 2133 @Override 2134 public String getResourceName() { 2135 return "DataElement"; 2136 } 2137 2138 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2139 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2140 } 2141 2142 2143}