001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 042import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 043import ca.uhn.fhir.model.dstu2.resource.Appointment; 044import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 045import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 048import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 049import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 057import ca.uhn.fhir.model.dstu2.resource.BodySite; 058import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 059import ca.uhn.fhir.model.dstu2.resource.CarePlan; 060import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 063import ca.uhn.fhir.model.dstu2.resource.Claim; 064import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 065import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 066import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 067import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 068import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 069import ca.uhn.fhir.model.dstu2.composite.CodingDt; 070import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 071import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 072import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 073import ca.uhn.fhir.model.dstu2.resource.Composition; 074import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 075import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 076import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 077import ca.uhn.fhir.model.dstu2.resource.Condition; 078import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 079import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 082import ca.uhn.fhir.model.dstu2.resource.Conformance; 083import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 085import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 086import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 087import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 088import ca.uhn.fhir.model.dstu2.resource.Contract; 089import ca.uhn.fhir.model.dstu2.resource.Coverage; 090import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 091import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 092import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 093import ca.uhn.fhir.model.dstu2.resource.Device; 094import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 095import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 096import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 097import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 098import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 101import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 102import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 103import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 105import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 106import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 108import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 109import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 110import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 111import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 112import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 113import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 114import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 115import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 116import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 117import ca.uhn.fhir.model.dstu2.resource.Encounter; 118import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 119import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 120import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 121import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 122import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 123import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 124import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 125import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 126import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 127import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 128import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 129import ca.uhn.fhir.model.dstu2.resource.Goal; 130import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 131import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 132import ca.uhn.fhir.model.dstu2.resource.Group; 133import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 134import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 135import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 136import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 137import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 138import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 139import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 140import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 141import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 143import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 144import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 145import ca.uhn.fhir.model.dstu2.resource.Immunization; 146import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 147import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 148import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 149import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 150import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 152import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 153import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 154import ca.uhn.fhir.model.dstu2.resource.Location; 155import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 156import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 157import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 158import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 159import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 160import ca.uhn.fhir.model.dstu2.resource.Media; 161import ca.uhn.fhir.model.dstu2.resource.Medication; 162import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 163import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 164import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 165import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 166import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 167import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 168import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 169import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 170import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 171import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 172import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 175import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 176import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 177import ca.uhn.fhir.model.dstu2.resource.Observation; 178import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 179import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 180import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 181import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 182import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 183import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 184import ca.uhn.fhir.model.dstu2.resource.Order; 185import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.Organization; 187import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 188import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 189import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 190import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 191import ca.uhn.fhir.model.dstu2.resource.Patient; 192import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 193import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 194import ca.uhn.fhir.model.dstu2.resource.Person; 195import ca.uhn.fhir.model.dstu2.resource.Practitioner; 196import ca.uhn.fhir.model.dstu2.resource.Procedure; 197import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 198import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 199import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 200import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 201import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 202import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 203import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 204import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 205import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 206import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 207import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 208import ca.uhn.fhir.model.dstu2.composite.RangeDt; 209import ca.uhn.fhir.model.dstu2.composite.RatioDt; 210import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 211import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 212import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 213import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 214import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 216import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 217import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 218import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 219import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 220import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 221import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 222import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 223import ca.uhn.fhir.model.dstu2.resource.Schedule; 224import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 225import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 226import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 227import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 228import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 229import ca.uhn.fhir.model.dstu2.resource.Slot; 230import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.Specimen; 232import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 233import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 234import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 235import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 236import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 237import ca.uhn.fhir.model.dstu2.resource.Substance; 238import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 239import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 240import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 241import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 242import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 243import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 244import ca.uhn.fhir.model.dstu2.composite.TimingDt; 245import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 247import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 249import ca.uhn.fhir.model.dstu2.resource.ValueSet; 250import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 251import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 252import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 253import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 254import ca.uhn.fhir.model.api.IResource; 255import ca.uhn.fhir.model.dstu2.composite.AgeDt; 256import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 257import ca.uhn.fhir.model.dstu2.composite.DurationDt; 258import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 259import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 260import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 261import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 262import ca.uhn.fhir.model.primitive.Base64BinaryDt; 263import ca.uhn.fhir.model.primitive.BooleanDt; 264import ca.uhn.fhir.model.primitive.BoundCodeDt; 265import ca.uhn.fhir.model.primitive.CodeDt; 266import ca.uhn.fhir.model.primitive.DateDt; 267import ca.uhn.fhir.model.primitive.DateTimeDt; 268import ca.uhn.fhir.model.primitive.DecimalDt; 269import ca.uhn.fhir.model.primitive.IdDt; 270import ca.uhn.fhir.model.primitive.InstantDt; 271import ca.uhn.fhir.model.primitive.IntegerDt; 272import ca.uhn.fhir.model.primitive.OidDt; 273import ca.uhn.fhir.model.primitive.PositiveIntDt; 274import ca.uhn.fhir.model.primitive.StringDt; 275import ca.uhn.fhir.model.primitive.TimeDt; 276import ca.uhn.fhir.model.primitive.UnsignedIntDt; 277import ca.uhn.fhir.model.primitive.UriDt; 278 279 280/** 281 * HAPI/FHIR <b>ClaimResponse</b> Resource 282 * () 283 * 284 * <p> 285 * <b>Definition:</b> 286 * This resource provides the adjudication details from the processing of a Claim resource. 287 * </p> 288 * 289 * <p> 290 * <b>Requirements:</b> 291 * 292 * </p> 293 * 294 * <p> 295 * <b>Profile Definition:</b> 296 * <a href="http://hl7.org/fhir/profiles/ClaimResponse">http://hl7.org/fhir/profiles/ClaimResponse</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="ClaimResponse", profile="http://hl7.org/fhir/profiles/ClaimResponse", id="claimresponse") 301public class ClaimResponse extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource 303 { 304 305 /** 306 * Search parameter constant for <b>identifier</b> 307 * <p> 308 * Description: <b>The identity of the insurer</b><br> 309 * Type: <b>token</b><br> 310 * Path: <b>ClaimResponse.identifier</b><br> 311 * </p> 312 */ 313 @SearchParamDefinition(name="identifier", path="ClaimResponse.identifier", description="The identity of the insurer", type="token" 314 ) 315 public static final String SP_IDENTIFIER = "identifier"; 316 317 /** 318 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 319 * <p> 320 * Description: <b>The identity of the insurer</b><br> 321 * Type: <b>token</b><br> 322 * Path: <b>ClaimResponse.identifier</b><br> 323 * </p> 324 */ 325 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 326 327 328 329 @Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 330 @Description( 331 shortDefinition="", 332 formalDefinition="The Response business identifier" 333 ) 334 private java.util.List<IdentifierDt> myIdentifier; 335 336 @Child(name="request", order=1, min=0, max=1, summary=false, modifier=false, type={ 337 ca.uhn.fhir.model.dstu2.resource.Claim.class 338 }) 339 @Description( 340 shortDefinition="", 341 formalDefinition="Original request resource referrence" 342 ) 343 private ResourceReferenceDt myRequest; 344 345 @Child(name="ruleset", type=CodingDt.class, order=2, min=0, max=1, summary=false, modifier=false) 346 @Description( 347 shortDefinition="", 348 formalDefinition="The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources." 349 ) 350 private CodingDt myRuleset; 351 352 @Child(name="originalRuleset", type=CodingDt.class, order=3, min=0, max=1, summary=false, modifier=false) 353 @Description( 354 shortDefinition="", 355 formalDefinition="The style (standard) and version of the original material which was converted into this resource." 356 ) 357 private CodingDt myOriginalRuleset; 358 359 @Child(name="created", type=DateTimeDt.class, order=4, min=0, max=1, summary=false, modifier=false) 360 @Description( 361 shortDefinition="", 362 formalDefinition="The date when the enclosed suite of services were performed or completed" 363 ) 364 private DateTimeDt myCreated; 365 366 @Child(name="organization", order=5, min=0, max=1, summary=false, modifier=false, type={ 367 ca.uhn.fhir.model.dstu2.resource.Organization.class 368 }) 369 @Description( 370 shortDefinition="", 371 formalDefinition="The Insurer who produced this adjudicated response." 372 ) 373 private ResourceReferenceDt myOrganization; 374 375 @Child(name="requestProvider", order=6, min=0, max=1, summary=false, modifier=false, type={ 376 ca.uhn.fhir.model.dstu2.resource.Practitioner.class 377 }) 378 @Description( 379 shortDefinition="", 380 formalDefinition="The practitioner who is responsible for the services rendered to the patient." 381 ) 382 private ResourceReferenceDt myRequestProvider; 383 384 @Child(name="requestOrganization", order=7, min=0, max=1, summary=false, modifier=false, type={ 385 ca.uhn.fhir.model.dstu2.resource.Organization.class 386 }) 387 @Description( 388 shortDefinition="", 389 formalDefinition="The organization which is responsible for the services rendered to the patient." 390 ) 391 private ResourceReferenceDt myRequestOrganization; 392 393 @Child(name="outcome", type=CodeDt.class, order=8, min=0, max=1, summary=false, modifier=false) 394 @Description( 395 shortDefinition="", 396 formalDefinition="Transaction status: error, complete" 397 ) 398 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/remittance-outcome") 399 private BoundCodeDt<RemittanceOutcomeEnum> myOutcome; 400 401 @Child(name="disposition", type=StringDt.class, order=9, min=0, max=1, summary=false, modifier=false) 402 @Description( 403 shortDefinition="", 404 formalDefinition="A description of the status of the adjudication." 405 ) 406 private StringDt myDisposition; 407 408 @Child(name="payeeType", type=CodingDt.class, order=10, min=0, max=1, summary=false, modifier=false) 409 @Description( 410 shortDefinition="", 411 formalDefinition="Party to be reimbursed: Subscriber, provider, other." 412 ) 413 private CodingDt myPayeeType; 414 415 @Child(name="item", order=11, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 416 @Description( 417 shortDefinition="", 418 formalDefinition="The first tier service adjudications for submitted services." 419 ) 420 private java.util.List<Item> myItem; 421 422 @Child(name="addItem", order=12, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 423 @Description( 424 shortDefinition="", 425 formalDefinition="The first tier service adjudications for payor added services." 426 ) 427 private java.util.List<AddItem> myAddItem; 428 429 @Child(name="error", order=13, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 430 @Description( 431 shortDefinition="", 432 formalDefinition="Mutually exclusive with Services Provided (Item)." 433 ) 434 private java.util.List<Error> myError; 435 436 @Child(name="totalCost", type=MoneyDt.class, order=14, min=0, max=1, summary=false, modifier=false) 437 @Description( 438 shortDefinition="", 439 formalDefinition="The total cost of the services reported." 440 ) 441 private MoneyDt myTotalCost; 442 443 @Child(name="unallocDeductable", type=MoneyDt.class, order=15, min=0, max=1, summary=false, modifier=false) 444 @Description( 445 shortDefinition="", 446 formalDefinition="The amount of deductible applied which was not allocated to any particular service line." 447 ) 448 private MoneyDt myUnallocDeductable; 449 450 @Child(name="totalBenefit", type=MoneyDt.class, order=16, min=0, max=1, summary=false, modifier=false) 451 @Description( 452 shortDefinition="", 453 formalDefinition="Total amount of benefit payable (Equal to sum of the Benefit amounts from all detail lines and additions less the Unallocated Deductible)" 454 ) 455 private MoneyDt myTotalBenefit; 456 457 @Child(name="paymentAdjustment", type=MoneyDt.class, order=17, min=0, max=1, summary=false, modifier=false) 458 @Description( 459 shortDefinition="", 460 formalDefinition="Adjustment to the payment of this transaction which is not related to adjudication of this transaction." 461 ) 462 private MoneyDt myPaymentAdjustment; 463 464 @Child(name="paymentAdjustmentReason", type=CodingDt.class, order=18, min=0, max=1, summary=false, modifier=false) 465 @Description( 466 shortDefinition="", 467 formalDefinition="Reason for the payment adjustment." 468 ) 469 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjustment-reason") 470 private CodingDt myPaymentAdjustmentReason; 471 472 @Child(name="paymentDate", type=DateDt.class, order=19, min=0, max=1, summary=false, modifier=false) 473 @Description( 474 shortDefinition="", 475 formalDefinition="Estimated payment data" 476 ) 477 private DateDt myPaymentDate; 478 479 @Child(name="paymentAmount", type=MoneyDt.class, order=20, min=0, max=1, summary=false, modifier=false) 480 @Description( 481 shortDefinition="", 482 formalDefinition="Payable less any payment adjustment." 483 ) 484 private MoneyDt myPaymentAmount; 485 486 @Child(name="paymentRef", type=IdentifierDt.class, order=21, min=0, max=1, summary=false, modifier=false) 487 @Description( 488 shortDefinition="", 489 formalDefinition="Payment identifier" 490 ) 491 private IdentifierDt myPaymentRef; 492 493 @Child(name="reserved", type=CodingDt.class, order=22, min=0, max=1, summary=false, modifier=false) 494 @Description( 495 shortDefinition="", 496 formalDefinition="Status of funds reservation (For provider, for Patient, None)." 497 ) 498 private CodingDt myReserved; 499 500 @Child(name="form", type=CodingDt.class, order=23, min=0, max=1, summary=false, modifier=false) 501 @Description( 502 shortDefinition="", 503 formalDefinition="The form to be used for printing the content." 504 ) 505 private CodingDt myForm; 506 507 @Child(name="note", order=24, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 508 @Description( 509 shortDefinition="", 510 formalDefinition="Note text" 511 ) 512 private java.util.List<Note> myNote; 513 514 @Child(name="coverage", order=25, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 515 @Description( 516 shortDefinition="", 517 formalDefinition="Financial instrument by which payment information for health care" 518 ) 519 private java.util.List<Coverage> myCoverage; 520 521 522 @Override 523 public boolean isEmpty() { 524 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myRequest, myRuleset, myOriginalRuleset, myCreated, myOrganization, myRequestProvider, myRequestOrganization, myOutcome, myDisposition, myPayeeType, myItem, myAddItem, myError, myTotalCost, myUnallocDeductable, myTotalBenefit, myPaymentAdjustment, myPaymentAdjustmentReason, myPaymentDate, myPaymentAmount, myPaymentRef, myReserved, myForm, myNote, myCoverage); 525 } 526 527 @Override 528 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 529 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myRequest, myRuleset, myOriginalRuleset, myCreated, myOrganization, myRequestProvider, myRequestOrganization, myOutcome, myDisposition, myPayeeType, myItem, myAddItem, myError, myTotalCost, myUnallocDeductable, myTotalBenefit, myPaymentAdjustment, myPaymentAdjustmentReason, myPaymentDate, myPaymentAmount, myPaymentRef, myReserved, myForm, myNote, myCoverage); 530 } 531 532 /** 533 * Gets the value(s) for <b>identifier</b> (). 534 * creating it if it does 535 * not exist. Will not return <code>null</code>. 536 * 537 * <p> 538 * <b>Definition:</b> 539 * The Response business identifier 540 * </p> 541 */ 542 public java.util.List<IdentifierDt> getIdentifier() { 543 if (myIdentifier == null) { 544 myIdentifier = new java.util.ArrayList<IdentifierDt>(); 545 } 546 return myIdentifier; 547 } 548 549 /** 550 * Sets the value(s) for <b>identifier</b> () 551 * 552 * <p> 553 * <b>Definition:</b> 554 * The Response business identifier 555 * </p> 556 */ 557 public ClaimResponse setIdentifier(java.util.List<IdentifierDt> theValue) { 558 myIdentifier = theValue; 559 return this; 560 } 561 562 563 564 /** 565 * Adds and returns a new value for <b>identifier</b> () 566 * 567 * <p> 568 * <b>Definition:</b> 569 * The Response business identifier 570 * </p> 571 */ 572 public IdentifierDt addIdentifier() { 573 IdentifierDt newType = new IdentifierDt(); 574 getIdentifier().add(newType); 575 return newType; 576 } 577 578 /** 579 * Adds a given new value for <b>identifier</b> () 580 * 581 * <p> 582 * <b>Definition:</b> 583 * The Response business identifier 584 * </p> 585 * @param theValue The identifier to add (must not be <code>null</code>) 586 */ 587 public ClaimResponse addIdentifier(IdentifierDt theValue) { 588 if (theValue == null) { 589 throw new NullPointerException("theValue must not be null"); 590 } 591 getIdentifier().add(theValue); 592 return this; 593 } 594 595 /** 596 * Gets the first repetition for <b>identifier</b> (), 597 * creating it if it does not already exist. 598 * 599 * <p> 600 * <b>Definition:</b> 601 * The Response business identifier 602 * </p> 603 */ 604 public IdentifierDt getIdentifierFirstRep() { 605 if (getIdentifier().isEmpty()) { 606 return addIdentifier(); 607 } 608 return getIdentifier().get(0); 609 } 610 611 /** 612 * Gets the value(s) for <b>request</b> (). 613 * creating it if it does 614 * not exist. Will not return <code>null</code>. 615 * 616 * <p> 617 * <b>Definition:</b> 618 * Original request resource referrence 619 * </p> 620 */ 621 public ResourceReferenceDt getRequest() { 622 if (myRequest == null) { 623 myRequest = new ResourceReferenceDt(); 624 } 625 return myRequest; 626 } 627 628 /** 629 * Sets the value(s) for <b>request</b> () 630 * 631 * <p> 632 * <b>Definition:</b> 633 * Original request resource referrence 634 * </p> 635 */ 636 public ClaimResponse setRequest(ResourceReferenceDt theValue) { 637 myRequest = theValue; 638 return this; 639 } 640 641 642 643 644 /** 645 * Gets the value(s) for <b>ruleset</b> (). 646 * creating it if it does 647 * not exist. Will not return <code>null</code>. 648 * 649 * <p> 650 * <b>Definition:</b> 651 * The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources. 652 * </p> 653 */ 654 public CodingDt getRuleset() { 655 if (myRuleset == null) { 656 myRuleset = new CodingDt(); 657 } 658 return myRuleset; 659 } 660 661 /** 662 * Sets the value(s) for <b>ruleset</b> () 663 * 664 * <p> 665 * <b>Definition:</b> 666 * The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources. 667 * </p> 668 */ 669 public ClaimResponse setRuleset(CodingDt theValue) { 670 myRuleset = theValue; 671 return this; 672 } 673 674 675 676 677 /** 678 * Gets the value(s) for <b>originalRuleset</b> (). 679 * creating it if it does 680 * not exist. Will not return <code>null</code>. 681 * 682 * <p> 683 * <b>Definition:</b> 684 * The style (standard) and version of the original material which was converted into this resource. 685 * </p> 686 */ 687 public CodingDt getOriginalRuleset() { 688 if (myOriginalRuleset == null) { 689 myOriginalRuleset = new CodingDt(); 690 } 691 return myOriginalRuleset; 692 } 693 694 /** 695 * Sets the value(s) for <b>originalRuleset</b> () 696 * 697 * <p> 698 * <b>Definition:</b> 699 * The style (standard) and version of the original material which was converted into this resource. 700 * </p> 701 */ 702 public ClaimResponse setOriginalRuleset(CodingDt theValue) { 703 myOriginalRuleset = theValue; 704 return this; 705 } 706 707 708 709 710 /** 711 * Gets the value(s) for <b>created</b> (). 712 * creating it if it does 713 * not exist. Will not return <code>null</code>. 714 * 715 * <p> 716 * <b>Definition:</b> 717 * The date when the enclosed suite of services were performed or completed 718 * </p> 719 */ 720 public DateTimeDt getCreatedElement() { 721 if (myCreated == null) { 722 myCreated = new DateTimeDt(); 723 } 724 return myCreated; 725 } 726 727 728 /** 729 * Gets the value(s) for <b>created</b> (). 730 * creating it if it does 731 * not exist. This method may return <code>null</code>. 732 * 733 * <p> 734 * <b>Definition:</b> 735 * The date when the enclosed suite of services were performed or completed 736 * </p> 737 */ 738 public Date getCreated() { 739 return getCreatedElement().getValue(); 740 } 741 742 /** 743 * Sets the value(s) for <b>created</b> () 744 * 745 * <p> 746 * <b>Definition:</b> 747 * The date when the enclosed suite of services were performed or completed 748 * </p> 749 */ 750 public ClaimResponse setCreated(DateTimeDt theValue) { 751 myCreated = theValue; 752 return this; 753 } 754 755 756 757 /** 758 * Sets the value for <b>created</b> () 759 * 760 * <p> 761 * <b>Definition:</b> 762 * The date when the enclosed suite of services were performed or completed 763 * </p> 764 */ 765 public ClaimResponse setCreatedWithSecondsPrecision( Date theDate) { 766 myCreated = new DateTimeDt(theDate); 767 return this; 768 } 769 770 /** 771 * Sets the value for <b>created</b> () 772 * 773 * <p> 774 * <b>Definition:</b> 775 * The date when the enclosed suite of services were performed or completed 776 * </p> 777 */ 778 public ClaimResponse setCreated( Date theDate, TemporalPrecisionEnum thePrecision) { 779 myCreated = new DateTimeDt(theDate, thePrecision); 780 return this; 781 } 782 783 784 /** 785 * Gets the value(s) for <b>organization</b> (). 786 * creating it if it does 787 * not exist. Will not return <code>null</code>. 788 * 789 * <p> 790 * <b>Definition:</b> 791 * The Insurer who produced this adjudicated response. 792 * </p> 793 */ 794 public ResourceReferenceDt getOrganization() { 795 if (myOrganization == null) { 796 myOrganization = new ResourceReferenceDt(); 797 } 798 return myOrganization; 799 } 800 801 /** 802 * Sets the value(s) for <b>organization</b> () 803 * 804 * <p> 805 * <b>Definition:</b> 806 * The Insurer who produced this adjudicated response. 807 * </p> 808 */ 809 public ClaimResponse setOrganization(ResourceReferenceDt theValue) { 810 myOrganization = theValue; 811 return this; 812 } 813 814 815 816 817 /** 818 * Gets the value(s) for <b>requestProvider</b> (). 819 * creating it if it does 820 * not exist. Will not return <code>null</code>. 821 * 822 * <p> 823 * <b>Definition:</b> 824 * The practitioner who is responsible for the services rendered to the patient. 825 * </p> 826 */ 827 public ResourceReferenceDt getRequestProvider() { 828 if (myRequestProvider == null) { 829 myRequestProvider = new ResourceReferenceDt(); 830 } 831 return myRequestProvider; 832 } 833 834 /** 835 * Sets the value(s) for <b>requestProvider</b> () 836 * 837 * <p> 838 * <b>Definition:</b> 839 * The practitioner who is responsible for the services rendered to the patient. 840 * </p> 841 */ 842 public ClaimResponse setRequestProvider(ResourceReferenceDt theValue) { 843 myRequestProvider = theValue; 844 return this; 845 } 846 847 848 849 850 /** 851 * Gets the value(s) for <b>requestOrganization</b> (). 852 * creating it if it does 853 * not exist. Will not return <code>null</code>. 854 * 855 * <p> 856 * <b>Definition:</b> 857 * The organization which is responsible for the services rendered to the patient. 858 * </p> 859 */ 860 public ResourceReferenceDt getRequestOrganization() { 861 if (myRequestOrganization == null) { 862 myRequestOrganization = new ResourceReferenceDt(); 863 } 864 return myRequestOrganization; 865 } 866 867 /** 868 * Sets the value(s) for <b>requestOrganization</b> () 869 * 870 * <p> 871 * <b>Definition:</b> 872 * The organization which is responsible for the services rendered to the patient. 873 * </p> 874 */ 875 public ClaimResponse setRequestOrganization(ResourceReferenceDt theValue) { 876 myRequestOrganization = theValue; 877 return this; 878 } 879 880 881 882 883 /** 884 * Gets the value(s) for <b>outcome</b> (). 885 * creating it if it does 886 * not exist. Will not return <code>null</code>. 887 * 888 * <p> 889 * <b>Definition:</b> 890 * Transaction status: error, complete 891 * </p> 892 */ 893 public BoundCodeDt<RemittanceOutcomeEnum> getOutcomeElement() { 894 if (myOutcome == null) { 895 myOutcome = new BoundCodeDt<RemittanceOutcomeEnum>(RemittanceOutcomeEnum.VALUESET_BINDER); 896 } 897 return myOutcome; 898 } 899 900 901 /** 902 * Gets the value(s) for <b>outcome</b> (). 903 * creating it if it does 904 * not exist. This method may return <code>null</code>. 905 * 906 * <p> 907 * <b>Definition:</b> 908 * Transaction status: error, complete 909 * </p> 910 */ 911 public String getOutcome() { 912 return getOutcomeElement().getValue(); 913 } 914 915 /** 916 * Sets the value(s) for <b>outcome</b> () 917 * 918 * <p> 919 * <b>Definition:</b> 920 * Transaction status: error, complete 921 * </p> 922 */ 923 public ClaimResponse setOutcome(BoundCodeDt<RemittanceOutcomeEnum> theValue) { 924 myOutcome = theValue; 925 return this; 926 } 927 928 929 930 /** 931 * Sets the value(s) for <b>outcome</b> () 932 * 933 * <p> 934 * <b>Definition:</b> 935 * Transaction status: error, complete 936 * </p> 937 */ 938 public ClaimResponse setOutcome(RemittanceOutcomeEnum theValue) { 939 setOutcome(new BoundCodeDt<RemittanceOutcomeEnum>(RemittanceOutcomeEnum.VALUESET_BINDER, theValue)); 940 941/* 942 getOutcomeElement().setValueAsEnum(theValue); 943*/ 944 return this; 945 } 946 947 948 /** 949 * Gets the value(s) for <b>disposition</b> (). 950 * creating it if it does 951 * not exist. Will not return <code>null</code>. 952 * 953 * <p> 954 * <b>Definition:</b> 955 * A description of the status of the adjudication. 956 * </p> 957 */ 958 public StringDt getDispositionElement() { 959 if (myDisposition == null) { 960 myDisposition = new StringDt(); 961 } 962 return myDisposition; 963 } 964 965 966 /** 967 * Gets the value(s) for <b>disposition</b> (). 968 * creating it if it does 969 * not exist. This method may return <code>null</code>. 970 * 971 * <p> 972 * <b>Definition:</b> 973 * A description of the status of the adjudication. 974 * </p> 975 */ 976 public String getDisposition() { 977 return getDispositionElement().getValue(); 978 } 979 980 /** 981 * Sets the value(s) for <b>disposition</b> () 982 * 983 * <p> 984 * <b>Definition:</b> 985 * A description of the status of the adjudication. 986 * </p> 987 */ 988 public ClaimResponse setDisposition(StringDt theValue) { 989 myDisposition = theValue; 990 return this; 991 } 992 993 994 995 /** 996 * Sets the value for <b>disposition</b> () 997 * 998 * <p> 999 * <b>Definition:</b> 1000 * A description of the status of the adjudication. 1001 * </p> 1002 */ 1003 public ClaimResponse setDisposition( String theString) { 1004 myDisposition = new StringDt(theString); 1005 return this; 1006 } 1007 1008 1009 /** 1010 * Gets the value(s) for <b>payeeType</b> (). 1011 * creating it if it does 1012 * not exist. Will not return <code>null</code>. 1013 * 1014 * <p> 1015 * <b>Definition:</b> 1016 * Party to be reimbursed: Subscriber, provider, other. 1017 * </p> 1018 */ 1019 public CodingDt getPayeeType() { 1020 if (myPayeeType == null) { 1021 myPayeeType = new CodingDt(); 1022 } 1023 return myPayeeType; 1024 } 1025 1026 /** 1027 * Sets the value(s) for <b>payeeType</b> () 1028 * 1029 * <p> 1030 * <b>Definition:</b> 1031 * Party to be reimbursed: Subscriber, provider, other. 1032 * </p> 1033 */ 1034 public ClaimResponse setPayeeType(CodingDt theValue) { 1035 myPayeeType = theValue; 1036 return this; 1037 } 1038 1039 1040 1041 1042 /** 1043 * Gets the value(s) for <b>item</b> (). 1044 * creating it if it does 1045 * not exist. Will not return <code>null</code>. 1046 * 1047 * <p> 1048 * <b>Definition:</b> 1049 * The first tier service adjudications for submitted services. 1050 * </p> 1051 */ 1052 public java.util.List<Item> getItem() { 1053 if (myItem == null) { 1054 myItem = new java.util.ArrayList<Item>(); 1055 } 1056 return myItem; 1057 } 1058 1059 /** 1060 * Sets the value(s) for <b>item</b> () 1061 * 1062 * <p> 1063 * <b>Definition:</b> 1064 * The first tier service adjudications for submitted services. 1065 * </p> 1066 */ 1067 public ClaimResponse setItem(java.util.List<Item> theValue) { 1068 myItem = theValue; 1069 return this; 1070 } 1071 1072 1073 1074 /** 1075 * Adds and returns a new value for <b>item</b> () 1076 * 1077 * <p> 1078 * <b>Definition:</b> 1079 * The first tier service adjudications for submitted services. 1080 * </p> 1081 */ 1082 public Item addItem() { 1083 Item newType = new Item(); 1084 getItem().add(newType); 1085 return newType; 1086 } 1087 1088 /** 1089 * Adds a given new value for <b>item</b> () 1090 * 1091 * <p> 1092 * <b>Definition:</b> 1093 * The first tier service adjudications for submitted services. 1094 * </p> 1095 * @param theValue The item to add (must not be <code>null</code>) 1096 */ 1097 public ClaimResponse addItem(Item theValue) { 1098 if (theValue == null) { 1099 throw new NullPointerException("theValue must not be null"); 1100 } 1101 getItem().add(theValue); 1102 return this; 1103 } 1104 1105 /** 1106 * Gets the first repetition for <b>item</b> (), 1107 * creating it if it does not already exist. 1108 * 1109 * <p> 1110 * <b>Definition:</b> 1111 * The first tier service adjudications for submitted services. 1112 * </p> 1113 */ 1114 public Item getItemFirstRep() { 1115 if (getItem().isEmpty()) { 1116 return addItem(); 1117 } 1118 return getItem().get(0); 1119 } 1120 1121 /** 1122 * Gets the value(s) for <b>addItem</b> (). 1123 * creating it if it does 1124 * not exist. Will not return <code>null</code>. 1125 * 1126 * <p> 1127 * <b>Definition:</b> 1128 * The first tier service adjudications for payor added services. 1129 * </p> 1130 */ 1131 public java.util.List<AddItem> getAddItem() { 1132 if (myAddItem == null) { 1133 myAddItem = new java.util.ArrayList<AddItem>(); 1134 } 1135 return myAddItem; 1136 } 1137 1138 /** 1139 * Sets the value(s) for <b>addItem</b> () 1140 * 1141 * <p> 1142 * <b>Definition:</b> 1143 * The first tier service adjudications for payor added services. 1144 * </p> 1145 */ 1146 public ClaimResponse setAddItem(java.util.List<AddItem> theValue) { 1147 myAddItem = theValue; 1148 return this; 1149 } 1150 1151 1152 1153 /** 1154 * Adds and returns a new value for <b>addItem</b> () 1155 * 1156 * <p> 1157 * <b>Definition:</b> 1158 * The first tier service adjudications for payor added services. 1159 * </p> 1160 */ 1161 public AddItem addAddItem() { 1162 AddItem newType = new AddItem(); 1163 getAddItem().add(newType); 1164 return newType; 1165 } 1166 1167 /** 1168 * Adds a given new value for <b>addItem</b> () 1169 * 1170 * <p> 1171 * <b>Definition:</b> 1172 * The first tier service adjudications for payor added services. 1173 * </p> 1174 * @param theValue The addItem to add (must not be <code>null</code>) 1175 */ 1176 public ClaimResponse addAddItem(AddItem theValue) { 1177 if (theValue == null) { 1178 throw new NullPointerException("theValue must not be null"); 1179 } 1180 getAddItem().add(theValue); 1181 return this; 1182 } 1183 1184 /** 1185 * Gets the first repetition for <b>addItem</b> (), 1186 * creating it if it does not already exist. 1187 * 1188 * <p> 1189 * <b>Definition:</b> 1190 * The first tier service adjudications for payor added services. 1191 * </p> 1192 */ 1193 public AddItem getAddItemFirstRep() { 1194 if (getAddItem().isEmpty()) { 1195 return addAddItem(); 1196 } 1197 return getAddItem().get(0); 1198 } 1199 1200 /** 1201 * Gets the value(s) for <b>error</b> (). 1202 * creating it if it does 1203 * not exist. Will not return <code>null</code>. 1204 * 1205 * <p> 1206 * <b>Definition:</b> 1207 * Mutually exclusive with Services Provided (Item). 1208 * </p> 1209 */ 1210 public java.util.List<Error> getError() { 1211 if (myError == null) { 1212 myError = new java.util.ArrayList<Error>(); 1213 } 1214 return myError; 1215 } 1216 1217 /** 1218 * Sets the value(s) for <b>error</b> () 1219 * 1220 * <p> 1221 * <b>Definition:</b> 1222 * Mutually exclusive with Services Provided (Item). 1223 * </p> 1224 */ 1225 public ClaimResponse setError(java.util.List<Error> theValue) { 1226 myError = theValue; 1227 return this; 1228 } 1229 1230 1231 1232 /** 1233 * Adds and returns a new value for <b>error</b> () 1234 * 1235 * <p> 1236 * <b>Definition:</b> 1237 * Mutually exclusive with Services Provided (Item). 1238 * </p> 1239 */ 1240 public Error addError() { 1241 Error newType = new Error(); 1242 getError().add(newType); 1243 return newType; 1244 } 1245 1246 /** 1247 * Adds a given new value for <b>error</b> () 1248 * 1249 * <p> 1250 * <b>Definition:</b> 1251 * Mutually exclusive with Services Provided (Item). 1252 * </p> 1253 * @param theValue The error to add (must not be <code>null</code>) 1254 */ 1255 public ClaimResponse addError(Error theValue) { 1256 if (theValue == null) { 1257 throw new NullPointerException("theValue must not be null"); 1258 } 1259 getError().add(theValue); 1260 return this; 1261 } 1262 1263 /** 1264 * Gets the first repetition for <b>error</b> (), 1265 * creating it if it does not already exist. 1266 * 1267 * <p> 1268 * <b>Definition:</b> 1269 * Mutually exclusive with Services Provided (Item). 1270 * </p> 1271 */ 1272 public Error getErrorFirstRep() { 1273 if (getError().isEmpty()) { 1274 return addError(); 1275 } 1276 return getError().get(0); 1277 } 1278 1279 /** 1280 * Gets the value(s) for <b>totalCost</b> (). 1281 * creating it if it does 1282 * not exist. Will not return <code>null</code>. 1283 * 1284 * <p> 1285 * <b>Definition:</b> 1286 * The total cost of the services reported. 1287 * </p> 1288 */ 1289 public MoneyDt getTotalCost() { 1290 if (myTotalCost == null) { 1291 myTotalCost = new MoneyDt(); 1292 } 1293 return myTotalCost; 1294 } 1295 1296 /** 1297 * Sets the value(s) for <b>totalCost</b> () 1298 * 1299 * <p> 1300 * <b>Definition:</b> 1301 * The total cost of the services reported. 1302 * </p> 1303 */ 1304 public ClaimResponse setTotalCost(MoneyDt theValue) { 1305 myTotalCost = theValue; 1306 return this; 1307 } 1308 1309 1310 1311 1312 /** 1313 * Gets the value(s) for <b>unallocDeductable</b> (). 1314 * creating it if it does 1315 * not exist. Will not return <code>null</code>. 1316 * 1317 * <p> 1318 * <b>Definition:</b> 1319 * The amount of deductible applied which was not allocated to any particular service line. 1320 * </p> 1321 */ 1322 public MoneyDt getUnallocDeductable() { 1323 if (myUnallocDeductable == null) { 1324 myUnallocDeductable = new MoneyDt(); 1325 } 1326 return myUnallocDeductable; 1327 } 1328 1329 /** 1330 * Sets the value(s) for <b>unallocDeductable</b> () 1331 * 1332 * <p> 1333 * <b>Definition:</b> 1334 * The amount of deductible applied which was not allocated to any particular service line. 1335 * </p> 1336 */ 1337 public ClaimResponse setUnallocDeductable(MoneyDt theValue) { 1338 myUnallocDeductable = theValue; 1339 return this; 1340 } 1341 1342 1343 1344 1345 /** 1346 * Gets the value(s) for <b>totalBenefit</b> (). 1347 * creating it if it does 1348 * not exist. Will not return <code>null</code>. 1349 * 1350 * <p> 1351 * <b>Definition:</b> 1352 * Total amount of benefit payable (Equal to sum of the Benefit amounts from all detail lines and additions less the Unallocated Deductible) 1353 * </p> 1354 */ 1355 public MoneyDt getTotalBenefit() { 1356 if (myTotalBenefit == null) { 1357 myTotalBenefit = new MoneyDt(); 1358 } 1359 return myTotalBenefit; 1360 } 1361 1362 /** 1363 * Sets the value(s) for <b>totalBenefit</b> () 1364 * 1365 * <p> 1366 * <b>Definition:</b> 1367 * Total amount of benefit payable (Equal to sum of the Benefit amounts from all detail lines and additions less the Unallocated Deductible) 1368 * </p> 1369 */ 1370 public ClaimResponse setTotalBenefit(MoneyDt theValue) { 1371 myTotalBenefit = theValue; 1372 return this; 1373 } 1374 1375 1376 1377 1378 /** 1379 * Gets the value(s) for <b>paymentAdjustment</b> (). 1380 * creating it if it does 1381 * not exist. Will not return <code>null</code>. 1382 * 1383 * <p> 1384 * <b>Definition:</b> 1385 * Adjustment to the payment of this transaction which is not related to adjudication of this transaction. 1386 * </p> 1387 */ 1388 public MoneyDt getPaymentAdjustment() { 1389 if (myPaymentAdjustment == null) { 1390 myPaymentAdjustment = new MoneyDt(); 1391 } 1392 return myPaymentAdjustment; 1393 } 1394 1395 /** 1396 * Sets the value(s) for <b>paymentAdjustment</b> () 1397 * 1398 * <p> 1399 * <b>Definition:</b> 1400 * Adjustment to the payment of this transaction which is not related to adjudication of this transaction. 1401 * </p> 1402 */ 1403 public ClaimResponse setPaymentAdjustment(MoneyDt theValue) { 1404 myPaymentAdjustment = theValue; 1405 return this; 1406 } 1407 1408 1409 1410 1411 /** 1412 * Gets the value(s) for <b>paymentAdjustmentReason</b> (). 1413 * creating it if it does 1414 * not exist. Will not return <code>null</code>. 1415 * 1416 * <p> 1417 * <b>Definition:</b> 1418 * Reason for the payment adjustment. 1419 * </p> 1420 */ 1421 public CodingDt getPaymentAdjustmentReason() { 1422 if (myPaymentAdjustmentReason == null) { 1423 myPaymentAdjustmentReason = new CodingDt(); 1424 } 1425 return myPaymentAdjustmentReason; 1426 } 1427 1428 /** 1429 * Sets the value(s) for <b>paymentAdjustmentReason</b> () 1430 * 1431 * <p> 1432 * <b>Definition:</b> 1433 * Reason for the payment adjustment. 1434 * </p> 1435 */ 1436 public ClaimResponse setPaymentAdjustmentReason(CodingDt theValue) { 1437 myPaymentAdjustmentReason = theValue; 1438 return this; 1439 } 1440 1441 1442 1443 1444 /** 1445 * Gets the value(s) for <b>paymentDate</b> (). 1446 * creating it if it does 1447 * not exist. Will not return <code>null</code>. 1448 * 1449 * <p> 1450 * <b>Definition:</b> 1451 * Estimated payment data 1452 * </p> 1453 */ 1454 public DateDt getPaymentDateElement() { 1455 if (myPaymentDate == null) { 1456 myPaymentDate = new DateDt(); 1457 } 1458 return myPaymentDate; 1459 } 1460 1461 1462 /** 1463 * Gets the value(s) for <b>paymentDate</b> (). 1464 * creating it if it does 1465 * not exist. This method may return <code>null</code>. 1466 * 1467 * <p> 1468 * <b>Definition:</b> 1469 * Estimated payment data 1470 * </p> 1471 */ 1472 public Date getPaymentDate() { 1473 return getPaymentDateElement().getValue(); 1474 } 1475 1476 /** 1477 * Sets the value(s) for <b>paymentDate</b> () 1478 * 1479 * <p> 1480 * <b>Definition:</b> 1481 * Estimated payment data 1482 * </p> 1483 */ 1484 public ClaimResponse setPaymentDate(DateDt theValue) { 1485 myPaymentDate = theValue; 1486 return this; 1487 } 1488 1489 1490 1491 /** 1492 * Sets the value for <b>paymentDate</b> () 1493 * 1494 * <p> 1495 * <b>Definition:</b> 1496 * Estimated payment data 1497 * </p> 1498 */ 1499 public ClaimResponse setPaymentDateWithDayPrecision( Date theDate) { 1500 myPaymentDate = new DateDt(theDate); 1501 return this; 1502 } 1503 1504 /** 1505 * Sets the value for <b>paymentDate</b> () 1506 * 1507 * <p> 1508 * <b>Definition:</b> 1509 * Estimated payment data 1510 * </p> 1511 */ 1512 public ClaimResponse setPaymentDate( Date theDate, TemporalPrecisionEnum thePrecision) { 1513 myPaymentDate = new DateDt(theDate, thePrecision); 1514 return this; 1515 } 1516 1517 1518 /** 1519 * Gets the value(s) for <b>paymentAmount</b> (). 1520 * creating it if it does 1521 * not exist. Will not return <code>null</code>. 1522 * 1523 * <p> 1524 * <b>Definition:</b> 1525 * Payable less any payment adjustment. 1526 * </p> 1527 */ 1528 public MoneyDt getPaymentAmount() { 1529 if (myPaymentAmount == null) { 1530 myPaymentAmount = new MoneyDt(); 1531 } 1532 return myPaymentAmount; 1533 } 1534 1535 /** 1536 * Sets the value(s) for <b>paymentAmount</b> () 1537 * 1538 * <p> 1539 * <b>Definition:</b> 1540 * Payable less any payment adjustment. 1541 * </p> 1542 */ 1543 public ClaimResponse setPaymentAmount(MoneyDt theValue) { 1544 myPaymentAmount = theValue; 1545 return this; 1546 } 1547 1548 1549 1550 1551 /** 1552 * Gets the value(s) for <b>paymentRef</b> (). 1553 * creating it if it does 1554 * not exist. Will not return <code>null</code>. 1555 * 1556 * <p> 1557 * <b>Definition:</b> 1558 * Payment identifier 1559 * </p> 1560 */ 1561 public IdentifierDt getPaymentRef() { 1562 if (myPaymentRef == null) { 1563 myPaymentRef = new IdentifierDt(); 1564 } 1565 return myPaymentRef; 1566 } 1567 1568 /** 1569 * Sets the value(s) for <b>paymentRef</b> () 1570 * 1571 * <p> 1572 * <b>Definition:</b> 1573 * Payment identifier 1574 * </p> 1575 */ 1576 public ClaimResponse setPaymentRef(IdentifierDt theValue) { 1577 myPaymentRef = theValue; 1578 return this; 1579 } 1580 1581 1582 1583 1584 /** 1585 * Gets the value(s) for <b>reserved</b> (). 1586 * creating it if it does 1587 * not exist. Will not return <code>null</code>. 1588 * 1589 * <p> 1590 * <b>Definition:</b> 1591 * Status of funds reservation (For provider, for Patient, None). 1592 * </p> 1593 */ 1594 public CodingDt getReserved() { 1595 if (myReserved == null) { 1596 myReserved = new CodingDt(); 1597 } 1598 return myReserved; 1599 } 1600 1601 /** 1602 * Sets the value(s) for <b>reserved</b> () 1603 * 1604 * <p> 1605 * <b>Definition:</b> 1606 * Status of funds reservation (For provider, for Patient, None). 1607 * </p> 1608 */ 1609 public ClaimResponse setReserved(CodingDt theValue) { 1610 myReserved = theValue; 1611 return this; 1612 } 1613 1614 1615 1616 1617 /** 1618 * Gets the value(s) for <b>form</b> (). 1619 * creating it if it does 1620 * not exist. Will not return <code>null</code>. 1621 * 1622 * <p> 1623 * <b>Definition:</b> 1624 * The form to be used for printing the content. 1625 * </p> 1626 */ 1627 public CodingDt getForm() { 1628 if (myForm == null) { 1629 myForm = new CodingDt(); 1630 } 1631 return myForm; 1632 } 1633 1634 /** 1635 * Sets the value(s) for <b>form</b> () 1636 * 1637 * <p> 1638 * <b>Definition:</b> 1639 * The form to be used for printing the content. 1640 * </p> 1641 */ 1642 public ClaimResponse setForm(CodingDt theValue) { 1643 myForm = theValue; 1644 return this; 1645 } 1646 1647 1648 1649 1650 /** 1651 * Gets the value(s) for <b>note</b> (). 1652 * creating it if it does 1653 * not exist. Will not return <code>null</code>. 1654 * 1655 * <p> 1656 * <b>Definition:</b> 1657 * Note text 1658 * </p> 1659 */ 1660 public java.util.List<Note> getNote() { 1661 if (myNote == null) { 1662 myNote = new java.util.ArrayList<Note>(); 1663 } 1664 return myNote; 1665 } 1666 1667 /** 1668 * Sets the value(s) for <b>note</b> () 1669 * 1670 * <p> 1671 * <b>Definition:</b> 1672 * Note text 1673 * </p> 1674 */ 1675 public ClaimResponse setNote(java.util.List<Note> theValue) { 1676 myNote = theValue; 1677 return this; 1678 } 1679 1680 1681 1682 /** 1683 * Adds and returns a new value for <b>note</b> () 1684 * 1685 * <p> 1686 * <b>Definition:</b> 1687 * Note text 1688 * </p> 1689 */ 1690 public Note addNote() { 1691 Note newType = new Note(); 1692 getNote().add(newType); 1693 return newType; 1694 } 1695 1696 /** 1697 * Adds a given new value for <b>note</b> () 1698 * 1699 * <p> 1700 * <b>Definition:</b> 1701 * Note text 1702 * </p> 1703 * @param theValue The note to add (must not be <code>null</code>) 1704 */ 1705 public ClaimResponse addNote(Note theValue) { 1706 if (theValue == null) { 1707 throw new NullPointerException("theValue must not be null"); 1708 } 1709 getNote().add(theValue); 1710 return this; 1711 } 1712 1713 /** 1714 * Gets the first repetition for <b>note</b> (), 1715 * creating it if it does not already exist. 1716 * 1717 * <p> 1718 * <b>Definition:</b> 1719 * Note text 1720 * </p> 1721 */ 1722 public Note getNoteFirstRep() { 1723 if (getNote().isEmpty()) { 1724 return addNote(); 1725 } 1726 return getNote().get(0); 1727 } 1728 1729 /** 1730 * Gets the value(s) for <b>coverage</b> (). 1731 * creating it if it does 1732 * not exist. Will not return <code>null</code>. 1733 * 1734 * <p> 1735 * <b>Definition:</b> 1736 * Financial instrument by which payment information for health care 1737 * </p> 1738 */ 1739 public java.util.List<Coverage> getCoverage() { 1740 if (myCoverage == null) { 1741 myCoverage = new java.util.ArrayList<Coverage>(); 1742 } 1743 return myCoverage; 1744 } 1745 1746 /** 1747 * Sets the value(s) for <b>coverage</b> () 1748 * 1749 * <p> 1750 * <b>Definition:</b> 1751 * Financial instrument by which payment information for health care 1752 * </p> 1753 */ 1754 public ClaimResponse setCoverage(java.util.List<Coverage> theValue) { 1755 myCoverage = theValue; 1756 return this; 1757 } 1758 1759 1760 1761 /** 1762 * Adds and returns a new value for <b>coverage</b> () 1763 * 1764 * <p> 1765 * <b>Definition:</b> 1766 * Financial instrument by which payment information for health care 1767 * </p> 1768 */ 1769 public Coverage addCoverage() { 1770 Coverage newType = new Coverage(); 1771 getCoverage().add(newType); 1772 return newType; 1773 } 1774 1775 /** 1776 * Adds a given new value for <b>coverage</b> () 1777 * 1778 * <p> 1779 * <b>Definition:</b> 1780 * Financial instrument by which payment information for health care 1781 * </p> 1782 * @param theValue The coverage to add (must not be <code>null</code>) 1783 */ 1784 public ClaimResponse addCoverage(Coverage theValue) { 1785 if (theValue == null) { 1786 throw new NullPointerException("theValue must not be null"); 1787 } 1788 getCoverage().add(theValue); 1789 return this; 1790 } 1791 1792 /** 1793 * Gets the first repetition for <b>coverage</b> (), 1794 * creating it if it does not already exist. 1795 * 1796 * <p> 1797 * <b>Definition:</b> 1798 * Financial instrument by which payment information for health care 1799 * </p> 1800 */ 1801 public Coverage getCoverageFirstRep() { 1802 if (getCoverage().isEmpty()) { 1803 return addCoverage(); 1804 } 1805 return getCoverage().get(0); 1806 } 1807 1808 /** 1809 * Block class for child element: <b>ClaimResponse.item</b> () 1810 * 1811 * <p> 1812 * <b>Definition:</b> 1813 * The first tier service adjudications for submitted services. 1814 * </p> 1815 */ 1816 @Block() 1817 public static class Item 1818 extends BaseIdentifiableElement 1819 implements IResourceBlock { 1820 1821 @Child(name="sequenceLinkId", type=PositiveIntDt.class, order=0, min=1, max=1, summary=false, modifier=false) 1822 @Description( 1823 shortDefinition="", 1824 formalDefinition="A service line number." 1825 ) 1826 private PositiveIntDt mySequenceLinkId; 1827 1828 @Child(name="noteNumber", type=PositiveIntDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 1829 @Description( 1830 shortDefinition="", 1831 formalDefinition="A list of note references to the notes provided below." 1832 ) 1833 private java.util.List<PositiveIntDt> myNoteNumber; 1834 1835 @Child(name="adjudication", order=2, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 1836 @Description( 1837 shortDefinition="", 1838 formalDefinition="The adjudications results." 1839 ) 1840 private java.util.List<ItemAdjudication> myAdjudication; 1841 1842 @Child(name="detail", order=3, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 1843 @Description( 1844 shortDefinition="", 1845 formalDefinition="The second tier service adjudications for submitted services." 1846 ) 1847 private java.util.List<ItemDetail> myDetail; 1848 1849 1850 @Override 1851 public boolean isEmpty() { 1852 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequenceLinkId, myNoteNumber, myAdjudication, myDetail); 1853 } 1854 1855 @Override 1856 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1857 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequenceLinkId, myNoteNumber, myAdjudication, myDetail); 1858 } 1859 1860 /** 1861 * Gets the value(s) for <b>sequenceLinkId</b> (). 1862 * creating it if it does 1863 * not exist. Will not return <code>null</code>. 1864 * 1865 * <p> 1866 * <b>Definition:</b> 1867 * A service line number. 1868 * </p> 1869 */ 1870 public PositiveIntDt getSequenceLinkIdElement() { 1871 if (mySequenceLinkId == null) { 1872 mySequenceLinkId = new PositiveIntDt(); 1873 } 1874 return mySequenceLinkId; 1875 } 1876 1877 1878 /** 1879 * Gets the value(s) for <b>sequenceLinkId</b> (). 1880 * creating it if it does 1881 * not exist. This method may return <code>null</code>. 1882 * 1883 * <p> 1884 * <b>Definition:</b> 1885 * A service line number. 1886 * </p> 1887 */ 1888 public Integer getSequenceLinkId() { 1889 return getSequenceLinkIdElement().getValue(); 1890 } 1891 1892 /** 1893 * Sets the value(s) for <b>sequenceLinkId</b> () 1894 * 1895 * <p> 1896 * <b>Definition:</b> 1897 * A service line number. 1898 * </p> 1899 */ 1900 public Item setSequenceLinkId(PositiveIntDt theValue) { 1901 mySequenceLinkId = theValue; 1902 return this; 1903 } 1904 1905 1906 1907 /** 1908 * Sets the value for <b>sequenceLinkId</b> () 1909 * 1910 * <p> 1911 * <b>Definition:</b> 1912 * A service line number. 1913 * </p> 1914 */ 1915 public Item setSequenceLinkId( int theInteger) { 1916 mySequenceLinkId = new PositiveIntDt(theInteger); 1917 return this; 1918 } 1919 1920 1921 /** 1922 * Gets the value(s) for <b>noteNumber</b> (). 1923 * creating it if it does 1924 * not exist. Will not return <code>null</code>. 1925 * 1926 * <p> 1927 * <b>Definition:</b> 1928 * A list of note references to the notes provided below. 1929 * </p> 1930 */ 1931 public java.util.List<PositiveIntDt> getNoteNumber() { 1932 if (myNoteNumber == null) { 1933 myNoteNumber = new java.util.ArrayList<PositiveIntDt>(); 1934 } 1935 return myNoteNumber; 1936 } 1937 1938 /** 1939 * Sets the value(s) for <b>noteNumber</b> () 1940 * 1941 * <p> 1942 * <b>Definition:</b> 1943 * A list of note references to the notes provided below. 1944 * </p> 1945 */ 1946 public Item setNoteNumber(java.util.List<PositiveIntDt> theValue) { 1947 myNoteNumber = theValue; 1948 return this; 1949 } 1950 1951 1952 1953 /** 1954 * Adds and returns a new value for <b>noteNumber</b> () 1955 * 1956 * <p> 1957 * <b>Definition:</b> 1958 * A list of note references to the notes provided below. 1959 * </p> 1960 */ 1961 public PositiveIntDt addNoteNumber() { 1962 PositiveIntDt newType = new PositiveIntDt(); 1963 getNoteNumber().add(newType); 1964 return newType; 1965 } 1966 1967 /** 1968 * Adds a given new value for <b>noteNumber</b> () 1969 * 1970 * <p> 1971 * <b>Definition:</b> 1972 * A list of note references to the notes provided below. 1973 * </p> 1974 * @param theValue The noteNumber to add (must not be <code>null</code>) 1975 */ 1976 public Item addNoteNumber(PositiveIntDt theValue) { 1977 if (theValue == null) { 1978 throw new NullPointerException("theValue must not be null"); 1979 } 1980 getNoteNumber().add(theValue); 1981 return this; 1982 } 1983 1984 /** 1985 * Gets the first repetition for <b>noteNumber</b> (), 1986 * creating it if it does not already exist. 1987 * 1988 * <p> 1989 * <b>Definition:</b> 1990 * A list of note references to the notes provided below. 1991 * </p> 1992 */ 1993 public PositiveIntDt getNoteNumberFirstRep() { 1994 if (getNoteNumber().isEmpty()) { 1995 return addNoteNumber(); 1996 } 1997 return getNoteNumber().get(0); 1998 } 1999 /** 2000 * Adds a new value for <b>noteNumber</b> () 2001 * 2002 * <p> 2003 * <b>Definition:</b> 2004 * A list of note references to the notes provided below. 2005 * </p> 2006 * 2007 * @return Returns a reference to this object, to allow for simple chaining. 2008 */ 2009 public Item addNoteNumber( int theInteger) { 2010 if (myNoteNumber == null) { 2011 myNoteNumber = new java.util.ArrayList<PositiveIntDt>(); 2012 } 2013 myNoteNumber.add(new PositiveIntDt(theInteger)); 2014 return this; 2015 } 2016 2017 2018 /** 2019 * Gets the value(s) for <b>adjudication</b> (). 2020 * creating it if it does 2021 * not exist. Will not return <code>null</code>. 2022 * 2023 * <p> 2024 * <b>Definition:</b> 2025 * The adjudications results. 2026 * </p> 2027 */ 2028 public java.util.List<ItemAdjudication> getAdjudication() { 2029 if (myAdjudication == null) { 2030 myAdjudication = new java.util.ArrayList<ItemAdjudication>(); 2031 } 2032 return myAdjudication; 2033 } 2034 2035 /** 2036 * Sets the value(s) for <b>adjudication</b> () 2037 * 2038 * <p> 2039 * <b>Definition:</b> 2040 * The adjudications results. 2041 * </p> 2042 */ 2043 public Item setAdjudication(java.util.List<ItemAdjudication> theValue) { 2044 myAdjudication = theValue; 2045 return this; 2046 } 2047 2048 2049 2050 /** 2051 * Adds and returns a new value for <b>adjudication</b> () 2052 * 2053 * <p> 2054 * <b>Definition:</b> 2055 * The adjudications results. 2056 * </p> 2057 */ 2058 public ItemAdjudication addAdjudication() { 2059 ItemAdjudication newType = new ItemAdjudication(); 2060 getAdjudication().add(newType); 2061 return newType; 2062 } 2063 2064 /** 2065 * Adds a given new value for <b>adjudication</b> () 2066 * 2067 * <p> 2068 * <b>Definition:</b> 2069 * The adjudications results. 2070 * </p> 2071 * @param theValue The adjudication to add (must not be <code>null</code>) 2072 */ 2073 public Item addAdjudication(ItemAdjudication theValue) { 2074 if (theValue == null) { 2075 throw new NullPointerException("theValue must not be null"); 2076 } 2077 getAdjudication().add(theValue); 2078 return this; 2079 } 2080 2081 /** 2082 * Gets the first repetition for <b>adjudication</b> (), 2083 * creating it if it does not already exist. 2084 * 2085 * <p> 2086 * <b>Definition:</b> 2087 * The adjudications results. 2088 * </p> 2089 */ 2090 public ItemAdjudication getAdjudicationFirstRep() { 2091 if (getAdjudication().isEmpty()) { 2092 return addAdjudication(); 2093 } 2094 return getAdjudication().get(0); 2095 } 2096 2097 /** 2098 * Gets the value(s) for <b>detail</b> (). 2099 * creating it if it does 2100 * not exist. Will not return <code>null</code>. 2101 * 2102 * <p> 2103 * <b>Definition:</b> 2104 * The second tier service adjudications for submitted services. 2105 * </p> 2106 */ 2107 public java.util.List<ItemDetail> getDetail() { 2108 if (myDetail == null) { 2109 myDetail = new java.util.ArrayList<ItemDetail>(); 2110 } 2111 return myDetail; 2112 } 2113 2114 /** 2115 * Sets the value(s) for <b>detail</b> () 2116 * 2117 * <p> 2118 * <b>Definition:</b> 2119 * The second tier service adjudications for submitted services. 2120 * </p> 2121 */ 2122 public Item setDetail(java.util.List<ItemDetail> theValue) { 2123 myDetail = theValue; 2124 return this; 2125 } 2126 2127 2128 2129 /** 2130 * Adds and returns a new value for <b>detail</b> () 2131 * 2132 * <p> 2133 * <b>Definition:</b> 2134 * The second tier service adjudications for submitted services. 2135 * </p> 2136 */ 2137 public ItemDetail addDetail() { 2138 ItemDetail newType = new ItemDetail(); 2139 getDetail().add(newType); 2140 return newType; 2141 } 2142 2143 /** 2144 * Adds a given new value for <b>detail</b> () 2145 * 2146 * <p> 2147 * <b>Definition:</b> 2148 * The second tier service adjudications for submitted services. 2149 * </p> 2150 * @param theValue The detail to add (must not be <code>null</code>) 2151 */ 2152 public Item addDetail(ItemDetail theValue) { 2153 if (theValue == null) { 2154 throw new NullPointerException("theValue must not be null"); 2155 } 2156 getDetail().add(theValue); 2157 return this; 2158 } 2159 2160 /** 2161 * Gets the first repetition for <b>detail</b> (), 2162 * creating it if it does not already exist. 2163 * 2164 * <p> 2165 * <b>Definition:</b> 2166 * The second tier service adjudications for submitted services. 2167 * </p> 2168 */ 2169 public ItemDetail getDetailFirstRep() { 2170 if (getDetail().isEmpty()) { 2171 return addDetail(); 2172 } 2173 return getDetail().get(0); 2174 } 2175 2176 2177 2178 } 2179 2180 /** 2181 * Block class for child element: <b>ClaimResponse.item.adjudication</b> () 2182 * 2183 * <p> 2184 * <b>Definition:</b> 2185 * The adjudications results. 2186 * </p> 2187 */ 2188 @Block() 2189 public static class ItemAdjudication 2190 extends BaseIdentifiableElement 2191 implements IResourceBlock { 2192 2193 @Child(name="code", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2194 @Description( 2195 shortDefinition="", 2196 formalDefinition="Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc." 2197 ) 2198 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjudication") 2199 private CodingDt myCode; 2200 2201 @Child(name="amount", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 2202 @Description( 2203 shortDefinition="", 2204 formalDefinition="Monetary amount associated with the code" 2205 ) 2206 private MoneyDt myAmount; 2207 2208 @Child(name="value", type=DecimalDt.class, order=2, min=0, max=1, summary=false, modifier=false) 2209 @Description( 2210 shortDefinition="", 2211 formalDefinition="A non-monetary value for example a percentage. Mutually exclusive to the amount element above." 2212 ) 2213 private DecimalDt myValue; 2214 2215 2216 @Override 2217 public boolean isEmpty() { 2218 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myAmount, myValue); 2219 } 2220 2221 @Override 2222 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2223 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myAmount, myValue); 2224 } 2225 2226 /** 2227 * Gets the value(s) for <b>code</b> (). 2228 * creating it if it does 2229 * not exist. Will not return <code>null</code>. 2230 * 2231 * <p> 2232 * <b>Definition:</b> 2233 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 2234 * </p> 2235 */ 2236 public CodingDt getCode() { 2237 if (myCode == null) { 2238 myCode = new CodingDt(); 2239 } 2240 return myCode; 2241 } 2242 2243 /** 2244 * Sets the value(s) for <b>code</b> () 2245 * 2246 * <p> 2247 * <b>Definition:</b> 2248 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 2249 * </p> 2250 */ 2251 public ItemAdjudication setCode(CodingDt theValue) { 2252 myCode = theValue; 2253 return this; 2254 } 2255 2256 2257 2258 2259 /** 2260 * Gets the value(s) for <b>amount</b> (). 2261 * creating it if it does 2262 * not exist. Will not return <code>null</code>. 2263 * 2264 * <p> 2265 * <b>Definition:</b> 2266 * Monetary amount associated with the code 2267 * </p> 2268 */ 2269 public MoneyDt getAmount() { 2270 if (myAmount == null) { 2271 myAmount = new MoneyDt(); 2272 } 2273 return myAmount; 2274 } 2275 2276 /** 2277 * Sets the value(s) for <b>amount</b> () 2278 * 2279 * <p> 2280 * <b>Definition:</b> 2281 * Monetary amount associated with the code 2282 * </p> 2283 */ 2284 public ItemAdjudication setAmount(MoneyDt theValue) { 2285 myAmount = theValue; 2286 return this; 2287 } 2288 2289 2290 2291 2292 /** 2293 * Gets the value(s) for <b>value</b> (). 2294 * creating it if it does 2295 * not exist. Will not return <code>null</code>. 2296 * 2297 * <p> 2298 * <b>Definition:</b> 2299 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2300 * </p> 2301 */ 2302 public DecimalDt getValueElement() { 2303 if (myValue == null) { 2304 myValue = new DecimalDt(); 2305 } 2306 return myValue; 2307 } 2308 2309 2310 /** 2311 * Gets the value(s) for <b>value</b> (). 2312 * creating it if it does 2313 * not exist. This method may return <code>null</code>. 2314 * 2315 * <p> 2316 * <b>Definition:</b> 2317 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2318 * </p> 2319 */ 2320 public BigDecimal getValue() { 2321 return getValueElement().getValue(); 2322 } 2323 2324 /** 2325 * Sets the value(s) for <b>value</b> () 2326 * 2327 * <p> 2328 * <b>Definition:</b> 2329 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2330 * </p> 2331 */ 2332 public ItemAdjudication setValue(DecimalDt theValue) { 2333 myValue = theValue; 2334 return this; 2335 } 2336 2337 2338 2339 /** 2340 * Sets the value for <b>value</b> () 2341 * 2342 * <p> 2343 * <b>Definition:</b> 2344 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2345 * </p> 2346 */ 2347 public ItemAdjudication setValue( long theValue) { 2348 myValue = new DecimalDt(theValue); 2349 return this; 2350 } 2351 2352 /** 2353 * Sets the value for <b>value</b> () 2354 * 2355 * <p> 2356 * <b>Definition:</b> 2357 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2358 * </p> 2359 */ 2360 public ItemAdjudication setValue( double theValue) { 2361 myValue = new DecimalDt(theValue); 2362 return this; 2363 } 2364 2365 /** 2366 * Sets the value for <b>value</b> () 2367 * 2368 * <p> 2369 * <b>Definition:</b> 2370 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2371 * </p> 2372 */ 2373 public ItemAdjudication setValue( java.math.BigDecimal theValue) { 2374 myValue = new DecimalDt(theValue); 2375 return this; 2376 } 2377 2378 2379 2380 2381 } 2382 2383 2384 /** 2385 * Block class for child element: <b>ClaimResponse.item.detail</b> () 2386 * 2387 * <p> 2388 * <b>Definition:</b> 2389 * The second tier service adjudications for submitted services. 2390 * </p> 2391 */ 2392 @Block() 2393 public static class ItemDetail 2394 extends BaseIdentifiableElement 2395 implements IResourceBlock { 2396 2397 @Child(name="sequenceLinkId", type=PositiveIntDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2398 @Description( 2399 shortDefinition="", 2400 formalDefinition="A service line number." 2401 ) 2402 private PositiveIntDt mySequenceLinkId; 2403 2404 @Child(name="adjudication", order=1, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2405 @Description( 2406 shortDefinition="", 2407 formalDefinition="The adjudications results." 2408 ) 2409 private java.util.List<ItemDetailAdjudication> myAdjudication; 2410 2411 @Child(name="subDetail", order=2, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2412 @Description( 2413 shortDefinition="", 2414 formalDefinition="The third tier service adjudications for submitted services." 2415 ) 2416 private java.util.List<ItemDetailSubDetail> mySubDetail; 2417 2418 2419 @Override 2420 public boolean isEmpty() { 2421 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequenceLinkId, myAdjudication, mySubDetail); 2422 } 2423 2424 @Override 2425 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2426 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequenceLinkId, myAdjudication, mySubDetail); 2427 } 2428 2429 /** 2430 * Gets the value(s) for <b>sequenceLinkId</b> (). 2431 * creating it if it does 2432 * not exist. Will not return <code>null</code>. 2433 * 2434 * <p> 2435 * <b>Definition:</b> 2436 * A service line number. 2437 * </p> 2438 */ 2439 public PositiveIntDt getSequenceLinkIdElement() { 2440 if (mySequenceLinkId == null) { 2441 mySequenceLinkId = new PositiveIntDt(); 2442 } 2443 return mySequenceLinkId; 2444 } 2445 2446 2447 /** 2448 * Gets the value(s) for <b>sequenceLinkId</b> (). 2449 * creating it if it does 2450 * not exist. This method may return <code>null</code>. 2451 * 2452 * <p> 2453 * <b>Definition:</b> 2454 * A service line number. 2455 * </p> 2456 */ 2457 public Integer getSequenceLinkId() { 2458 return getSequenceLinkIdElement().getValue(); 2459 } 2460 2461 /** 2462 * Sets the value(s) for <b>sequenceLinkId</b> () 2463 * 2464 * <p> 2465 * <b>Definition:</b> 2466 * A service line number. 2467 * </p> 2468 */ 2469 public ItemDetail setSequenceLinkId(PositiveIntDt theValue) { 2470 mySequenceLinkId = theValue; 2471 return this; 2472 } 2473 2474 2475 2476 /** 2477 * Sets the value for <b>sequenceLinkId</b> () 2478 * 2479 * <p> 2480 * <b>Definition:</b> 2481 * A service line number. 2482 * </p> 2483 */ 2484 public ItemDetail setSequenceLinkId( int theInteger) { 2485 mySequenceLinkId = new PositiveIntDt(theInteger); 2486 return this; 2487 } 2488 2489 2490 /** 2491 * Gets the value(s) for <b>adjudication</b> (). 2492 * creating it if it does 2493 * not exist. Will not return <code>null</code>. 2494 * 2495 * <p> 2496 * <b>Definition:</b> 2497 * The adjudications results. 2498 * </p> 2499 */ 2500 public java.util.List<ItemDetailAdjudication> getAdjudication() { 2501 if (myAdjudication == null) { 2502 myAdjudication = new java.util.ArrayList<ItemDetailAdjudication>(); 2503 } 2504 return myAdjudication; 2505 } 2506 2507 /** 2508 * Sets the value(s) for <b>adjudication</b> () 2509 * 2510 * <p> 2511 * <b>Definition:</b> 2512 * The adjudications results. 2513 * </p> 2514 */ 2515 public ItemDetail setAdjudication(java.util.List<ItemDetailAdjudication> theValue) { 2516 myAdjudication = theValue; 2517 return this; 2518 } 2519 2520 2521 2522 /** 2523 * Adds and returns a new value for <b>adjudication</b> () 2524 * 2525 * <p> 2526 * <b>Definition:</b> 2527 * The adjudications results. 2528 * </p> 2529 */ 2530 public ItemDetailAdjudication addAdjudication() { 2531 ItemDetailAdjudication newType = new ItemDetailAdjudication(); 2532 getAdjudication().add(newType); 2533 return newType; 2534 } 2535 2536 /** 2537 * Adds a given new value for <b>adjudication</b> () 2538 * 2539 * <p> 2540 * <b>Definition:</b> 2541 * The adjudications results. 2542 * </p> 2543 * @param theValue The adjudication to add (must not be <code>null</code>) 2544 */ 2545 public ItemDetail addAdjudication(ItemDetailAdjudication theValue) { 2546 if (theValue == null) { 2547 throw new NullPointerException("theValue must not be null"); 2548 } 2549 getAdjudication().add(theValue); 2550 return this; 2551 } 2552 2553 /** 2554 * Gets the first repetition for <b>adjudication</b> (), 2555 * creating it if it does not already exist. 2556 * 2557 * <p> 2558 * <b>Definition:</b> 2559 * The adjudications results. 2560 * </p> 2561 */ 2562 public ItemDetailAdjudication getAdjudicationFirstRep() { 2563 if (getAdjudication().isEmpty()) { 2564 return addAdjudication(); 2565 } 2566 return getAdjudication().get(0); 2567 } 2568 2569 /** 2570 * Gets the value(s) for <b>subDetail</b> (). 2571 * creating it if it does 2572 * not exist. Will not return <code>null</code>. 2573 * 2574 * <p> 2575 * <b>Definition:</b> 2576 * The third tier service adjudications for submitted services. 2577 * </p> 2578 */ 2579 public java.util.List<ItemDetailSubDetail> getSubDetail() { 2580 if (mySubDetail == null) { 2581 mySubDetail = new java.util.ArrayList<ItemDetailSubDetail>(); 2582 } 2583 return mySubDetail; 2584 } 2585 2586 /** 2587 * Sets the value(s) for <b>subDetail</b> () 2588 * 2589 * <p> 2590 * <b>Definition:</b> 2591 * The third tier service adjudications for submitted services. 2592 * </p> 2593 */ 2594 public ItemDetail setSubDetail(java.util.List<ItemDetailSubDetail> theValue) { 2595 mySubDetail = theValue; 2596 return this; 2597 } 2598 2599 2600 2601 /** 2602 * Adds and returns a new value for <b>subDetail</b> () 2603 * 2604 * <p> 2605 * <b>Definition:</b> 2606 * The third tier service adjudications for submitted services. 2607 * </p> 2608 */ 2609 public ItemDetailSubDetail addSubDetail() { 2610 ItemDetailSubDetail newType = new ItemDetailSubDetail(); 2611 getSubDetail().add(newType); 2612 return newType; 2613 } 2614 2615 /** 2616 * Adds a given new value for <b>subDetail</b> () 2617 * 2618 * <p> 2619 * <b>Definition:</b> 2620 * The third tier service adjudications for submitted services. 2621 * </p> 2622 * @param theValue The subDetail to add (must not be <code>null</code>) 2623 */ 2624 public ItemDetail addSubDetail(ItemDetailSubDetail theValue) { 2625 if (theValue == null) { 2626 throw new NullPointerException("theValue must not be null"); 2627 } 2628 getSubDetail().add(theValue); 2629 return this; 2630 } 2631 2632 /** 2633 * Gets the first repetition for <b>subDetail</b> (), 2634 * creating it if it does not already exist. 2635 * 2636 * <p> 2637 * <b>Definition:</b> 2638 * The third tier service adjudications for submitted services. 2639 * </p> 2640 */ 2641 public ItemDetailSubDetail getSubDetailFirstRep() { 2642 if (getSubDetail().isEmpty()) { 2643 return addSubDetail(); 2644 } 2645 return getSubDetail().get(0); 2646 } 2647 2648 2649 2650 } 2651 2652 /** 2653 * Block class for child element: <b>ClaimResponse.item.detail.adjudication</b> () 2654 * 2655 * <p> 2656 * <b>Definition:</b> 2657 * The adjudications results. 2658 * </p> 2659 */ 2660 @Block() 2661 public static class ItemDetailAdjudication 2662 extends BaseIdentifiableElement 2663 implements IResourceBlock { 2664 2665 @Child(name="code", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2666 @Description( 2667 shortDefinition="", 2668 formalDefinition="Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc." 2669 ) 2670 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjudication") 2671 private CodingDt myCode; 2672 2673 @Child(name="amount", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 2674 @Description( 2675 shortDefinition="", 2676 formalDefinition="Monetary amount associated with the code." 2677 ) 2678 private MoneyDt myAmount; 2679 2680 @Child(name="value", type=DecimalDt.class, order=2, min=0, max=1, summary=false, modifier=false) 2681 @Description( 2682 shortDefinition="", 2683 formalDefinition="A non-monetary value for example a percentage. Mutually exclusive to the amount element above." 2684 ) 2685 private DecimalDt myValue; 2686 2687 2688 @Override 2689 public boolean isEmpty() { 2690 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myAmount, myValue); 2691 } 2692 2693 @Override 2694 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2695 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myAmount, myValue); 2696 } 2697 2698 /** 2699 * Gets the value(s) for <b>code</b> (). 2700 * creating it if it does 2701 * not exist. Will not return <code>null</code>. 2702 * 2703 * <p> 2704 * <b>Definition:</b> 2705 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 2706 * </p> 2707 */ 2708 public CodingDt getCode() { 2709 if (myCode == null) { 2710 myCode = new CodingDt(); 2711 } 2712 return myCode; 2713 } 2714 2715 /** 2716 * Sets the value(s) for <b>code</b> () 2717 * 2718 * <p> 2719 * <b>Definition:</b> 2720 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 2721 * </p> 2722 */ 2723 public ItemDetailAdjudication setCode(CodingDt theValue) { 2724 myCode = theValue; 2725 return this; 2726 } 2727 2728 2729 2730 2731 /** 2732 * Gets the value(s) for <b>amount</b> (). 2733 * creating it if it does 2734 * not exist. Will not return <code>null</code>. 2735 * 2736 * <p> 2737 * <b>Definition:</b> 2738 * Monetary amount associated with the code. 2739 * </p> 2740 */ 2741 public MoneyDt getAmount() { 2742 if (myAmount == null) { 2743 myAmount = new MoneyDt(); 2744 } 2745 return myAmount; 2746 } 2747 2748 /** 2749 * Sets the value(s) for <b>amount</b> () 2750 * 2751 * <p> 2752 * <b>Definition:</b> 2753 * Monetary amount associated with the code. 2754 * </p> 2755 */ 2756 public ItemDetailAdjudication setAmount(MoneyDt theValue) { 2757 myAmount = theValue; 2758 return this; 2759 } 2760 2761 2762 2763 2764 /** 2765 * Gets the value(s) for <b>value</b> (). 2766 * creating it if it does 2767 * not exist. Will not return <code>null</code>. 2768 * 2769 * <p> 2770 * <b>Definition:</b> 2771 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2772 * </p> 2773 */ 2774 public DecimalDt getValueElement() { 2775 if (myValue == null) { 2776 myValue = new DecimalDt(); 2777 } 2778 return myValue; 2779 } 2780 2781 2782 /** 2783 * Gets the value(s) for <b>value</b> (). 2784 * creating it if it does 2785 * not exist. This method may return <code>null</code>. 2786 * 2787 * <p> 2788 * <b>Definition:</b> 2789 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2790 * </p> 2791 */ 2792 public BigDecimal getValue() { 2793 return getValueElement().getValue(); 2794 } 2795 2796 /** 2797 * Sets the value(s) for <b>value</b> () 2798 * 2799 * <p> 2800 * <b>Definition:</b> 2801 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2802 * </p> 2803 */ 2804 public ItemDetailAdjudication setValue(DecimalDt theValue) { 2805 myValue = theValue; 2806 return this; 2807 } 2808 2809 2810 2811 /** 2812 * Sets the value for <b>value</b> () 2813 * 2814 * <p> 2815 * <b>Definition:</b> 2816 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2817 * </p> 2818 */ 2819 public ItemDetailAdjudication setValue( long theValue) { 2820 myValue = new DecimalDt(theValue); 2821 return this; 2822 } 2823 2824 /** 2825 * Sets the value for <b>value</b> () 2826 * 2827 * <p> 2828 * <b>Definition:</b> 2829 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2830 * </p> 2831 */ 2832 public ItemDetailAdjudication setValue( double theValue) { 2833 myValue = new DecimalDt(theValue); 2834 return this; 2835 } 2836 2837 /** 2838 * Sets the value for <b>value</b> () 2839 * 2840 * <p> 2841 * <b>Definition:</b> 2842 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 2843 * </p> 2844 */ 2845 public ItemDetailAdjudication setValue( java.math.BigDecimal theValue) { 2846 myValue = new DecimalDt(theValue); 2847 return this; 2848 } 2849 2850 2851 2852 2853 } 2854 2855 2856 /** 2857 * Block class for child element: <b>ClaimResponse.item.detail.subDetail</b> () 2858 * 2859 * <p> 2860 * <b>Definition:</b> 2861 * The third tier service adjudications for submitted services. 2862 * </p> 2863 */ 2864 @Block() 2865 public static class ItemDetailSubDetail 2866 extends BaseIdentifiableElement 2867 implements IResourceBlock { 2868 2869 @Child(name="sequenceLinkId", type=PositiveIntDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2870 @Description( 2871 shortDefinition="", 2872 formalDefinition="A service line number." 2873 ) 2874 private PositiveIntDt mySequenceLinkId; 2875 2876 @Child(name="adjudication", order=1, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2877 @Description( 2878 shortDefinition="", 2879 formalDefinition="The adjudications results." 2880 ) 2881 private java.util.List<ItemDetailSubDetailAdjudication> myAdjudication; 2882 2883 2884 @Override 2885 public boolean isEmpty() { 2886 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequenceLinkId, myAdjudication); 2887 } 2888 2889 @Override 2890 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2891 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequenceLinkId, myAdjudication); 2892 } 2893 2894 /** 2895 * Gets the value(s) for <b>sequenceLinkId</b> (). 2896 * creating it if it does 2897 * not exist. Will not return <code>null</code>. 2898 * 2899 * <p> 2900 * <b>Definition:</b> 2901 * A service line number. 2902 * </p> 2903 */ 2904 public PositiveIntDt getSequenceLinkIdElement() { 2905 if (mySequenceLinkId == null) { 2906 mySequenceLinkId = new PositiveIntDt(); 2907 } 2908 return mySequenceLinkId; 2909 } 2910 2911 2912 /** 2913 * Gets the value(s) for <b>sequenceLinkId</b> (). 2914 * creating it if it does 2915 * not exist. This method may return <code>null</code>. 2916 * 2917 * <p> 2918 * <b>Definition:</b> 2919 * A service line number. 2920 * </p> 2921 */ 2922 public Integer getSequenceLinkId() { 2923 return getSequenceLinkIdElement().getValue(); 2924 } 2925 2926 /** 2927 * Sets the value(s) for <b>sequenceLinkId</b> () 2928 * 2929 * <p> 2930 * <b>Definition:</b> 2931 * A service line number. 2932 * </p> 2933 */ 2934 public ItemDetailSubDetail setSequenceLinkId(PositiveIntDt theValue) { 2935 mySequenceLinkId = theValue; 2936 return this; 2937 } 2938 2939 2940 2941 /** 2942 * Sets the value for <b>sequenceLinkId</b> () 2943 * 2944 * <p> 2945 * <b>Definition:</b> 2946 * A service line number. 2947 * </p> 2948 */ 2949 public ItemDetailSubDetail setSequenceLinkId( int theInteger) { 2950 mySequenceLinkId = new PositiveIntDt(theInteger); 2951 return this; 2952 } 2953 2954 2955 /** 2956 * Gets the value(s) for <b>adjudication</b> (). 2957 * creating it if it does 2958 * not exist. Will not return <code>null</code>. 2959 * 2960 * <p> 2961 * <b>Definition:</b> 2962 * The adjudications results. 2963 * </p> 2964 */ 2965 public java.util.List<ItemDetailSubDetailAdjudication> getAdjudication() { 2966 if (myAdjudication == null) { 2967 myAdjudication = new java.util.ArrayList<ItemDetailSubDetailAdjudication>(); 2968 } 2969 return myAdjudication; 2970 } 2971 2972 /** 2973 * Sets the value(s) for <b>adjudication</b> () 2974 * 2975 * <p> 2976 * <b>Definition:</b> 2977 * The adjudications results. 2978 * </p> 2979 */ 2980 public ItemDetailSubDetail setAdjudication(java.util.List<ItemDetailSubDetailAdjudication> theValue) { 2981 myAdjudication = theValue; 2982 return this; 2983 } 2984 2985 2986 2987 /** 2988 * Adds and returns a new value for <b>adjudication</b> () 2989 * 2990 * <p> 2991 * <b>Definition:</b> 2992 * The adjudications results. 2993 * </p> 2994 */ 2995 public ItemDetailSubDetailAdjudication addAdjudication() { 2996 ItemDetailSubDetailAdjudication newType = new ItemDetailSubDetailAdjudication(); 2997 getAdjudication().add(newType); 2998 return newType; 2999 } 3000 3001 /** 3002 * Adds a given new value for <b>adjudication</b> () 3003 * 3004 * <p> 3005 * <b>Definition:</b> 3006 * The adjudications results. 3007 * </p> 3008 * @param theValue The adjudication to add (must not be <code>null</code>) 3009 */ 3010 public ItemDetailSubDetail addAdjudication(ItemDetailSubDetailAdjudication theValue) { 3011 if (theValue == null) { 3012 throw new NullPointerException("theValue must not be null"); 3013 } 3014 getAdjudication().add(theValue); 3015 return this; 3016 } 3017 3018 /** 3019 * Gets the first repetition for <b>adjudication</b> (), 3020 * creating it if it does not already exist. 3021 * 3022 * <p> 3023 * <b>Definition:</b> 3024 * The adjudications results. 3025 * </p> 3026 */ 3027 public ItemDetailSubDetailAdjudication getAdjudicationFirstRep() { 3028 if (getAdjudication().isEmpty()) { 3029 return addAdjudication(); 3030 } 3031 return getAdjudication().get(0); 3032 } 3033 3034 3035 3036 } 3037 3038 /** 3039 * Block class for child element: <b>ClaimResponse.item.detail.subDetail.adjudication</b> () 3040 * 3041 * <p> 3042 * <b>Definition:</b> 3043 * The adjudications results. 3044 * </p> 3045 */ 3046 @Block() 3047 public static class ItemDetailSubDetailAdjudication 3048 extends BaseIdentifiableElement 3049 implements IResourceBlock { 3050 3051 @Child(name="code", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 3052 @Description( 3053 shortDefinition="", 3054 formalDefinition="Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc." 3055 ) 3056 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjudication") 3057 private CodingDt myCode; 3058 3059 @Child(name="amount", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 3060 @Description( 3061 shortDefinition="", 3062 formalDefinition="Monetary amount associated with the code." 3063 ) 3064 private MoneyDt myAmount; 3065 3066 @Child(name="value", type=DecimalDt.class, order=2, min=0, max=1, summary=false, modifier=false) 3067 @Description( 3068 shortDefinition="", 3069 formalDefinition="A non-monetary value for example a percentage. Mutually exclusive to the amount element above." 3070 ) 3071 private DecimalDt myValue; 3072 3073 3074 @Override 3075 public boolean isEmpty() { 3076 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myAmount, myValue); 3077 } 3078 3079 @Override 3080 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 3081 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myAmount, myValue); 3082 } 3083 3084 /** 3085 * Gets the value(s) for <b>code</b> (). 3086 * creating it if it does 3087 * not exist. Will not return <code>null</code>. 3088 * 3089 * <p> 3090 * <b>Definition:</b> 3091 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 3092 * </p> 3093 */ 3094 public CodingDt getCode() { 3095 if (myCode == null) { 3096 myCode = new CodingDt(); 3097 } 3098 return myCode; 3099 } 3100 3101 /** 3102 * Sets the value(s) for <b>code</b> () 3103 * 3104 * <p> 3105 * <b>Definition:</b> 3106 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 3107 * </p> 3108 */ 3109 public ItemDetailSubDetailAdjudication setCode(CodingDt theValue) { 3110 myCode = theValue; 3111 return this; 3112 } 3113 3114 3115 3116 3117 /** 3118 * Gets the value(s) for <b>amount</b> (). 3119 * creating it if it does 3120 * not exist. Will not return <code>null</code>. 3121 * 3122 * <p> 3123 * <b>Definition:</b> 3124 * Monetary amount associated with the code. 3125 * </p> 3126 */ 3127 public MoneyDt getAmount() { 3128 if (myAmount == null) { 3129 myAmount = new MoneyDt(); 3130 } 3131 return myAmount; 3132 } 3133 3134 /** 3135 * Sets the value(s) for <b>amount</b> () 3136 * 3137 * <p> 3138 * <b>Definition:</b> 3139 * Monetary amount associated with the code. 3140 * </p> 3141 */ 3142 public ItemDetailSubDetailAdjudication setAmount(MoneyDt theValue) { 3143 myAmount = theValue; 3144 return this; 3145 } 3146 3147 3148 3149 3150 /** 3151 * Gets the value(s) for <b>value</b> (). 3152 * creating it if it does 3153 * not exist. Will not return <code>null</code>. 3154 * 3155 * <p> 3156 * <b>Definition:</b> 3157 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3158 * </p> 3159 */ 3160 public DecimalDt getValueElement() { 3161 if (myValue == null) { 3162 myValue = new DecimalDt(); 3163 } 3164 return myValue; 3165 } 3166 3167 3168 /** 3169 * Gets the value(s) for <b>value</b> (). 3170 * creating it if it does 3171 * not exist. This method may return <code>null</code>. 3172 * 3173 * <p> 3174 * <b>Definition:</b> 3175 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3176 * </p> 3177 */ 3178 public BigDecimal getValue() { 3179 return getValueElement().getValue(); 3180 } 3181 3182 /** 3183 * Sets the value(s) for <b>value</b> () 3184 * 3185 * <p> 3186 * <b>Definition:</b> 3187 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3188 * </p> 3189 */ 3190 public ItemDetailSubDetailAdjudication setValue(DecimalDt theValue) { 3191 myValue = theValue; 3192 return this; 3193 } 3194 3195 3196 3197 /** 3198 * Sets the value for <b>value</b> () 3199 * 3200 * <p> 3201 * <b>Definition:</b> 3202 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3203 * </p> 3204 */ 3205 public ItemDetailSubDetailAdjudication setValue( long theValue) { 3206 myValue = new DecimalDt(theValue); 3207 return this; 3208 } 3209 3210 /** 3211 * Sets the value for <b>value</b> () 3212 * 3213 * <p> 3214 * <b>Definition:</b> 3215 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3216 * </p> 3217 */ 3218 public ItemDetailSubDetailAdjudication setValue( double theValue) { 3219 myValue = new DecimalDt(theValue); 3220 return this; 3221 } 3222 3223 /** 3224 * Sets the value for <b>value</b> () 3225 * 3226 * <p> 3227 * <b>Definition:</b> 3228 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3229 * </p> 3230 */ 3231 public ItemDetailSubDetailAdjudication setValue( java.math.BigDecimal theValue) { 3232 myValue = new DecimalDt(theValue); 3233 return this; 3234 } 3235 3236 3237 3238 3239 } 3240 3241 3242 3243 3244 3245 /** 3246 * Block class for child element: <b>ClaimResponse.addItem</b> () 3247 * 3248 * <p> 3249 * <b>Definition:</b> 3250 * The first tier service adjudications for payor added services. 3251 * </p> 3252 */ 3253 @Block() 3254 public static class AddItem 3255 extends BaseIdentifiableElement 3256 implements IResourceBlock { 3257 3258 @Child(name="sequenceLinkId", type=PositiveIntDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 3259 @Description( 3260 shortDefinition="", 3261 formalDefinition="List of input service items which this service line is intended to replace." 3262 ) 3263 private java.util.List<PositiveIntDt> mySequenceLinkId; 3264 3265 @Child(name="service", type=CodingDt.class, order=1, min=1, max=1, summary=false, modifier=false) 3266 @Description( 3267 shortDefinition="", 3268 formalDefinition="A code to indicate the Professional Service or Product supplied." 3269 ) 3270 private CodingDt myService; 3271 3272 @Child(name="fee", type=MoneyDt.class, order=2, min=0, max=1, summary=false, modifier=false) 3273 @Description( 3274 shortDefinition="", 3275 formalDefinition="The fee charged for the professional service or product.." 3276 ) 3277 private MoneyDt myFee; 3278 3279 @Child(name="noteNumberLinkId", type=PositiveIntDt.class, order=3, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 3280 @Description( 3281 shortDefinition="", 3282 formalDefinition="A list of note references to the notes provided below." 3283 ) 3284 private java.util.List<PositiveIntDt> myNoteNumberLinkId; 3285 3286 @Child(name="adjudication", order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 3287 @Description( 3288 shortDefinition="", 3289 formalDefinition="The adjudications results." 3290 ) 3291 private java.util.List<AddItemAdjudication> myAdjudication; 3292 3293 @Child(name="detail", order=5, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 3294 @Description( 3295 shortDefinition="", 3296 formalDefinition="The second tier service adjudications for payor added services." 3297 ) 3298 private java.util.List<AddItemDetail> myDetail; 3299 3300 3301 @Override 3302 public boolean isEmpty() { 3303 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequenceLinkId, myService, myFee, myNoteNumberLinkId, myAdjudication, myDetail); 3304 } 3305 3306 @Override 3307 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 3308 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequenceLinkId, myService, myFee, myNoteNumberLinkId, myAdjudication, myDetail); 3309 } 3310 3311 /** 3312 * Gets the value(s) for <b>sequenceLinkId</b> (). 3313 * creating it if it does 3314 * not exist. Will not return <code>null</code>. 3315 * 3316 * <p> 3317 * <b>Definition:</b> 3318 * List of input service items which this service line is intended to replace. 3319 * </p> 3320 */ 3321 public java.util.List<PositiveIntDt> getSequenceLinkId() { 3322 if (mySequenceLinkId == null) { 3323 mySequenceLinkId = new java.util.ArrayList<PositiveIntDt>(); 3324 } 3325 return mySequenceLinkId; 3326 } 3327 3328 /** 3329 * Sets the value(s) for <b>sequenceLinkId</b> () 3330 * 3331 * <p> 3332 * <b>Definition:</b> 3333 * List of input service items which this service line is intended to replace. 3334 * </p> 3335 */ 3336 public AddItem setSequenceLinkId(java.util.List<PositiveIntDt> theValue) { 3337 mySequenceLinkId = theValue; 3338 return this; 3339 } 3340 3341 3342 3343 /** 3344 * Adds and returns a new value for <b>sequenceLinkId</b> () 3345 * 3346 * <p> 3347 * <b>Definition:</b> 3348 * List of input service items which this service line is intended to replace. 3349 * </p> 3350 */ 3351 public PositiveIntDt addSequenceLinkId() { 3352 PositiveIntDt newType = new PositiveIntDt(); 3353 getSequenceLinkId().add(newType); 3354 return newType; 3355 } 3356 3357 /** 3358 * Adds a given new value for <b>sequenceLinkId</b> () 3359 * 3360 * <p> 3361 * <b>Definition:</b> 3362 * List of input service items which this service line is intended to replace. 3363 * </p> 3364 * @param theValue The sequenceLinkId to add (must not be <code>null</code>) 3365 */ 3366 public AddItem addSequenceLinkId(PositiveIntDt theValue) { 3367 if (theValue == null) { 3368 throw new NullPointerException("theValue must not be null"); 3369 } 3370 getSequenceLinkId().add(theValue); 3371 return this; 3372 } 3373 3374 /** 3375 * Gets the first repetition for <b>sequenceLinkId</b> (), 3376 * creating it if it does not already exist. 3377 * 3378 * <p> 3379 * <b>Definition:</b> 3380 * List of input service items which this service line is intended to replace. 3381 * </p> 3382 */ 3383 public PositiveIntDt getSequenceLinkIdFirstRep() { 3384 if (getSequenceLinkId().isEmpty()) { 3385 return addSequenceLinkId(); 3386 } 3387 return getSequenceLinkId().get(0); 3388 } 3389 /** 3390 * Adds a new value for <b>sequenceLinkId</b> () 3391 * 3392 * <p> 3393 * <b>Definition:</b> 3394 * List of input service items which this service line is intended to replace. 3395 * </p> 3396 * 3397 * @return Returns a reference to this object, to allow for simple chaining. 3398 */ 3399 public AddItem addSequenceLinkId( int theInteger) { 3400 if (mySequenceLinkId == null) { 3401 mySequenceLinkId = new java.util.ArrayList<PositiveIntDt>(); 3402 } 3403 mySequenceLinkId.add(new PositiveIntDt(theInteger)); 3404 return this; 3405 } 3406 3407 3408 /** 3409 * Gets the value(s) for <b>service</b> (). 3410 * creating it if it does 3411 * not exist. Will not return <code>null</code>. 3412 * 3413 * <p> 3414 * <b>Definition:</b> 3415 * A code to indicate the Professional Service or Product supplied. 3416 * </p> 3417 */ 3418 public CodingDt getService() { 3419 if (myService == null) { 3420 myService = new CodingDt(); 3421 } 3422 return myService; 3423 } 3424 3425 /** 3426 * Sets the value(s) for <b>service</b> () 3427 * 3428 * <p> 3429 * <b>Definition:</b> 3430 * A code to indicate the Professional Service or Product supplied. 3431 * </p> 3432 */ 3433 public AddItem setService(CodingDt theValue) { 3434 myService = theValue; 3435 return this; 3436 } 3437 3438 3439 3440 3441 /** 3442 * Gets the value(s) for <b>fee</b> (). 3443 * creating it if it does 3444 * not exist. Will not return <code>null</code>. 3445 * 3446 * <p> 3447 * <b>Definition:</b> 3448 * The fee charged for the professional service or product.. 3449 * </p> 3450 */ 3451 public MoneyDt getFee() { 3452 if (myFee == null) { 3453 myFee = new MoneyDt(); 3454 } 3455 return myFee; 3456 } 3457 3458 /** 3459 * Sets the value(s) for <b>fee</b> () 3460 * 3461 * <p> 3462 * <b>Definition:</b> 3463 * The fee charged for the professional service or product.. 3464 * </p> 3465 */ 3466 public AddItem setFee(MoneyDt theValue) { 3467 myFee = theValue; 3468 return this; 3469 } 3470 3471 3472 3473 3474 /** 3475 * Gets the value(s) for <b>noteNumberLinkId</b> (). 3476 * creating it if it does 3477 * not exist. Will not return <code>null</code>. 3478 * 3479 * <p> 3480 * <b>Definition:</b> 3481 * A list of note references to the notes provided below. 3482 * </p> 3483 */ 3484 public java.util.List<PositiveIntDt> getNoteNumberLinkId() { 3485 if (myNoteNumberLinkId == null) { 3486 myNoteNumberLinkId = new java.util.ArrayList<PositiveIntDt>(); 3487 } 3488 return myNoteNumberLinkId; 3489 } 3490 3491 /** 3492 * Sets the value(s) for <b>noteNumberLinkId</b> () 3493 * 3494 * <p> 3495 * <b>Definition:</b> 3496 * A list of note references to the notes provided below. 3497 * </p> 3498 */ 3499 public AddItem setNoteNumberLinkId(java.util.List<PositiveIntDt> theValue) { 3500 myNoteNumberLinkId = theValue; 3501 return this; 3502 } 3503 3504 3505 3506 /** 3507 * Adds and returns a new value for <b>noteNumberLinkId</b> () 3508 * 3509 * <p> 3510 * <b>Definition:</b> 3511 * A list of note references to the notes provided below. 3512 * </p> 3513 */ 3514 public PositiveIntDt addNoteNumberLinkId() { 3515 PositiveIntDt newType = new PositiveIntDt(); 3516 getNoteNumberLinkId().add(newType); 3517 return newType; 3518 } 3519 3520 /** 3521 * Adds a given new value for <b>noteNumberLinkId</b> () 3522 * 3523 * <p> 3524 * <b>Definition:</b> 3525 * A list of note references to the notes provided below. 3526 * </p> 3527 * @param theValue The noteNumberLinkId to add (must not be <code>null</code>) 3528 */ 3529 public AddItem addNoteNumberLinkId(PositiveIntDt theValue) { 3530 if (theValue == null) { 3531 throw new NullPointerException("theValue must not be null"); 3532 } 3533 getNoteNumberLinkId().add(theValue); 3534 return this; 3535 } 3536 3537 /** 3538 * Gets the first repetition for <b>noteNumberLinkId</b> (), 3539 * creating it if it does not already exist. 3540 * 3541 * <p> 3542 * <b>Definition:</b> 3543 * A list of note references to the notes provided below. 3544 * </p> 3545 */ 3546 public PositiveIntDt getNoteNumberLinkIdFirstRep() { 3547 if (getNoteNumberLinkId().isEmpty()) { 3548 return addNoteNumberLinkId(); 3549 } 3550 return getNoteNumberLinkId().get(0); 3551 } 3552 /** 3553 * Adds a new value for <b>noteNumberLinkId</b> () 3554 * 3555 * <p> 3556 * <b>Definition:</b> 3557 * A list of note references to the notes provided below. 3558 * </p> 3559 * 3560 * @return Returns a reference to this object, to allow for simple chaining. 3561 */ 3562 public AddItem addNoteNumberLinkId( int theInteger) { 3563 if (myNoteNumberLinkId == null) { 3564 myNoteNumberLinkId = new java.util.ArrayList<PositiveIntDt>(); 3565 } 3566 myNoteNumberLinkId.add(new PositiveIntDt(theInteger)); 3567 return this; 3568 } 3569 3570 3571 /** 3572 * Gets the value(s) for <b>adjudication</b> (). 3573 * creating it if it does 3574 * not exist. Will not return <code>null</code>. 3575 * 3576 * <p> 3577 * <b>Definition:</b> 3578 * The adjudications results. 3579 * </p> 3580 */ 3581 public java.util.List<AddItemAdjudication> getAdjudication() { 3582 if (myAdjudication == null) { 3583 myAdjudication = new java.util.ArrayList<AddItemAdjudication>(); 3584 } 3585 return myAdjudication; 3586 } 3587 3588 /** 3589 * Sets the value(s) for <b>adjudication</b> () 3590 * 3591 * <p> 3592 * <b>Definition:</b> 3593 * The adjudications results. 3594 * </p> 3595 */ 3596 public AddItem setAdjudication(java.util.List<AddItemAdjudication> theValue) { 3597 myAdjudication = theValue; 3598 return this; 3599 } 3600 3601 3602 3603 /** 3604 * Adds and returns a new value for <b>adjudication</b> () 3605 * 3606 * <p> 3607 * <b>Definition:</b> 3608 * The adjudications results. 3609 * </p> 3610 */ 3611 public AddItemAdjudication addAdjudication() { 3612 AddItemAdjudication newType = new AddItemAdjudication(); 3613 getAdjudication().add(newType); 3614 return newType; 3615 } 3616 3617 /** 3618 * Adds a given new value for <b>adjudication</b> () 3619 * 3620 * <p> 3621 * <b>Definition:</b> 3622 * The adjudications results. 3623 * </p> 3624 * @param theValue The adjudication to add (must not be <code>null</code>) 3625 */ 3626 public AddItem addAdjudication(AddItemAdjudication theValue) { 3627 if (theValue == null) { 3628 throw new NullPointerException("theValue must not be null"); 3629 } 3630 getAdjudication().add(theValue); 3631 return this; 3632 } 3633 3634 /** 3635 * Gets the first repetition for <b>adjudication</b> (), 3636 * creating it if it does not already exist. 3637 * 3638 * <p> 3639 * <b>Definition:</b> 3640 * The adjudications results. 3641 * </p> 3642 */ 3643 public AddItemAdjudication getAdjudicationFirstRep() { 3644 if (getAdjudication().isEmpty()) { 3645 return addAdjudication(); 3646 } 3647 return getAdjudication().get(0); 3648 } 3649 3650 /** 3651 * Gets the value(s) for <b>detail</b> (). 3652 * creating it if it does 3653 * not exist. Will not return <code>null</code>. 3654 * 3655 * <p> 3656 * <b>Definition:</b> 3657 * The second tier service adjudications for payor added services. 3658 * </p> 3659 */ 3660 public java.util.List<AddItemDetail> getDetail() { 3661 if (myDetail == null) { 3662 myDetail = new java.util.ArrayList<AddItemDetail>(); 3663 } 3664 return myDetail; 3665 } 3666 3667 /** 3668 * Sets the value(s) for <b>detail</b> () 3669 * 3670 * <p> 3671 * <b>Definition:</b> 3672 * The second tier service adjudications for payor added services. 3673 * </p> 3674 */ 3675 public AddItem setDetail(java.util.List<AddItemDetail> theValue) { 3676 myDetail = theValue; 3677 return this; 3678 } 3679 3680 3681 3682 /** 3683 * Adds and returns a new value for <b>detail</b> () 3684 * 3685 * <p> 3686 * <b>Definition:</b> 3687 * The second tier service adjudications for payor added services. 3688 * </p> 3689 */ 3690 public AddItemDetail addDetail() { 3691 AddItemDetail newType = new AddItemDetail(); 3692 getDetail().add(newType); 3693 return newType; 3694 } 3695 3696 /** 3697 * Adds a given new value for <b>detail</b> () 3698 * 3699 * <p> 3700 * <b>Definition:</b> 3701 * The second tier service adjudications for payor added services. 3702 * </p> 3703 * @param theValue The detail to add (must not be <code>null</code>) 3704 */ 3705 public AddItem addDetail(AddItemDetail theValue) { 3706 if (theValue == null) { 3707 throw new NullPointerException("theValue must not be null"); 3708 } 3709 getDetail().add(theValue); 3710 return this; 3711 } 3712 3713 /** 3714 * Gets the first repetition for <b>detail</b> (), 3715 * creating it if it does not already exist. 3716 * 3717 * <p> 3718 * <b>Definition:</b> 3719 * The second tier service adjudications for payor added services. 3720 * </p> 3721 */ 3722 public AddItemDetail getDetailFirstRep() { 3723 if (getDetail().isEmpty()) { 3724 return addDetail(); 3725 } 3726 return getDetail().get(0); 3727 } 3728 3729 3730 3731 } 3732 3733 /** 3734 * Block class for child element: <b>ClaimResponse.addItem.adjudication</b> () 3735 * 3736 * <p> 3737 * <b>Definition:</b> 3738 * The adjudications results. 3739 * </p> 3740 */ 3741 @Block() 3742 public static class AddItemAdjudication 3743 extends BaseIdentifiableElement 3744 implements IResourceBlock { 3745 3746 @Child(name="code", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 3747 @Description( 3748 shortDefinition="", 3749 formalDefinition="Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc." 3750 ) 3751 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjudication") 3752 private CodingDt myCode; 3753 3754 @Child(name="amount", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 3755 @Description( 3756 shortDefinition="", 3757 formalDefinition="Monetary amount associated with the code" 3758 ) 3759 private MoneyDt myAmount; 3760 3761 @Child(name="value", type=DecimalDt.class, order=2, min=0, max=1, summary=false, modifier=false) 3762 @Description( 3763 shortDefinition="", 3764 formalDefinition="A non-monetary value for example a percentage. Mutually exclusive to the amount element above." 3765 ) 3766 private DecimalDt myValue; 3767 3768 3769 @Override 3770 public boolean isEmpty() { 3771 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myAmount, myValue); 3772 } 3773 3774 @Override 3775 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 3776 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myAmount, myValue); 3777 } 3778 3779 /** 3780 * Gets the value(s) for <b>code</b> (). 3781 * creating it if it does 3782 * not exist. Will not return <code>null</code>. 3783 * 3784 * <p> 3785 * <b>Definition:</b> 3786 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 3787 * </p> 3788 */ 3789 public CodingDt getCode() { 3790 if (myCode == null) { 3791 myCode = new CodingDt(); 3792 } 3793 return myCode; 3794 } 3795 3796 /** 3797 * Sets the value(s) for <b>code</b> () 3798 * 3799 * <p> 3800 * <b>Definition:</b> 3801 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 3802 * </p> 3803 */ 3804 public AddItemAdjudication setCode(CodingDt theValue) { 3805 myCode = theValue; 3806 return this; 3807 } 3808 3809 3810 3811 3812 /** 3813 * Gets the value(s) for <b>amount</b> (). 3814 * creating it if it does 3815 * not exist. Will not return <code>null</code>. 3816 * 3817 * <p> 3818 * <b>Definition:</b> 3819 * Monetary amount associated with the code 3820 * </p> 3821 */ 3822 public MoneyDt getAmount() { 3823 if (myAmount == null) { 3824 myAmount = new MoneyDt(); 3825 } 3826 return myAmount; 3827 } 3828 3829 /** 3830 * Sets the value(s) for <b>amount</b> () 3831 * 3832 * <p> 3833 * <b>Definition:</b> 3834 * Monetary amount associated with the code 3835 * </p> 3836 */ 3837 public AddItemAdjudication setAmount(MoneyDt theValue) { 3838 myAmount = theValue; 3839 return this; 3840 } 3841 3842 3843 3844 3845 /** 3846 * Gets the value(s) for <b>value</b> (). 3847 * creating it if it does 3848 * not exist. Will not return <code>null</code>. 3849 * 3850 * <p> 3851 * <b>Definition:</b> 3852 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3853 * </p> 3854 */ 3855 public DecimalDt getValueElement() { 3856 if (myValue == null) { 3857 myValue = new DecimalDt(); 3858 } 3859 return myValue; 3860 } 3861 3862 3863 /** 3864 * Gets the value(s) for <b>value</b> (). 3865 * creating it if it does 3866 * not exist. This method may return <code>null</code>. 3867 * 3868 * <p> 3869 * <b>Definition:</b> 3870 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3871 * </p> 3872 */ 3873 public BigDecimal getValue() { 3874 return getValueElement().getValue(); 3875 } 3876 3877 /** 3878 * Sets the value(s) for <b>value</b> () 3879 * 3880 * <p> 3881 * <b>Definition:</b> 3882 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3883 * </p> 3884 */ 3885 public AddItemAdjudication setValue(DecimalDt theValue) { 3886 myValue = theValue; 3887 return this; 3888 } 3889 3890 3891 3892 /** 3893 * Sets the value for <b>value</b> () 3894 * 3895 * <p> 3896 * <b>Definition:</b> 3897 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3898 * </p> 3899 */ 3900 public AddItemAdjudication setValue( long theValue) { 3901 myValue = new DecimalDt(theValue); 3902 return this; 3903 } 3904 3905 /** 3906 * Sets the value for <b>value</b> () 3907 * 3908 * <p> 3909 * <b>Definition:</b> 3910 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3911 * </p> 3912 */ 3913 public AddItemAdjudication setValue( double theValue) { 3914 myValue = new DecimalDt(theValue); 3915 return this; 3916 } 3917 3918 /** 3919 * Sets the value for <b>value</b> () 3920 * 3921 * <p> 3922 * <b>Definition:</b> 3923 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 3924 * </p> 3925 */ 3926 public AddItemAdjudication setValue( java.math.BigDecimal theValue) { 3927 myValue = new DecimalDt(theValue); 3928 return this; 3929 } 3930 3931 3932 3933 3934 } 3935 3936 3937 /** 3938 * Block class for child element: <b>ClaimResponse.addItem.detail</b> () 3939 * 3940 * <p> 3941 * <b>Definition:</b> 3942 * The second tier service adjudications for payor added services. 3943 * </p> 3944 */ 3945 @Block() 3946 public static class AddItemDetail 3947 extends BaseIdentifiableElement 3948 implements IResourceBlock { 3949 3950 @Child(name="service", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 3951 @Description( 3952 shortDefinition="", 3953 formalDefinition="A code to indicate the Professional Service or Product supplied." 3954 ) 3955 private CodingDt myService; 3956 3957 @Child(name="fee", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 3958 @Description( 3959 shortDefinition="", 3960 formalDefinition="The fee charged for the professional service or product.." 3961 ) 3962 private MoneyDt myFee; 3963 3964 @Child(name="adjudication", order=2, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 3965 @Description( 3966 shortDefinition="", 3967 formalDefinition="The adjudications results." 3968 ) 3969 private java.util.List<AddItemDetailAdjudication> myAdjudication; 3970 3971 3972 @Override 3973 public boolean isEmpty() { 3974 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myService, myFee, myAdjudication); 3975 } 3976 3977 @Override 3978 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 3979 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myService, myFee, myAdjudication); 3980 } 3981 3982 /** 3983 * Gets the value(s) for <b>service</b> (). 3984 * creating it if it does 3985 * not exist. Will not return <code>null</code>. 3986 * 3987 * <p> 3988 * <b>Definition:</b> 3989 * A code to indicate the Professional Service or Product supplied. 3990 * </p> 3991 */ 3992 public CodingDt getService() { 3993 if (myService == null) { 3994 myService = new CodingDt(); 3995 } 3996 return myService; 3997 } 3998 3999 /** 4000 * Sets the value(s) for <b>service</b> () 4001 * 4002 * <p> 4003 * <b>Definition:</b> 4004 * A code to indicate the Professional Service or Product supplied. 4005 * </p> 4006 */ 4007 public AddItemDetail setService(CodingDt theValue) { 4008 myService = theValue; 4009 return this; 4010 } 4011 4012 4013 4014 4015 /** 4016 * Gets the value(s) for <b>fee</b> (). 4017 * creating it if it does 4018 * not exist. Will not return <code>null</code>. 4019 * 4020 * <p> 4021 * <b>Definition:</b> 4022 * The fee charged for the professional service or product.. 4023 * </p> 4024 */ 4025 public MoneyDt getFee() { 4026 if (myFee == null) { 4027 myFee = new MoneyDt(); 4028 } 4029 return myFee; 4030 } 4031 4032 /** 4033 * Sets the value(s) for <b>fee</b> () 4034 * 4035 * <p> 4036 * <b>Definition:</b> 4037 * The fee charged for the professional service or product.. 4038 * </p> 4039 */ 4040 public AddItemDetail setFee(MoneyDt theValue) { 4041 myFee = theValue; 4042 return this; 4043 } 4044 4045 4046 4047 4048 /** 4049 * Gets the value(s) for <b>adjudication</b> (). 4050 * creating it if it does 4051 * not exist. Will not return <code>null</code>. 4052 * 4053 * <p> 4054 * <b>Definition:</b> 4055 * The adjudications results. 4056 * </p> 4057 */ 4058 public java.util.List<AddItemDetailAdjudication> getAdjudication() { 4059 if (myAdjudication == null) { 4060 myAdjudication = new java.util.ArrayList<AddItemDetailAdjudication>(); 4061 } 4062 return myAdjudication; 4063 } 4064 4065 /** 4066 * Sets the value(s) for <b>adjudication</b> () 4067 * 4068 * <p> 4069 * <b>Definition:</b> 4070 * The adjudications results. 4071 * </p> 4072 */ 4073 public AddItemDetail setAdjudication(java.util.List<AddItemDetailAdjudication> theValue) { 4074 myAdjudication = theValue; 4075 return this; 4076 } 4077 4078 4079 4080 /** 4081 * Adds and returns a new value for <b>adjudication</b> () 4082 * 4083 * <p> 4084 * <b>Definition:</b> 4085 * The adjudications results. 4086 * </p> 4087 */ 4088 public AddItemDetailAdjudication addAdjudication() { 4089 AddItemDetailAdjudication newType = new AddItemDetailAdjudication(); 4090 getAdjudication().add(newType); 4091 return newType; 4092 } 4093 4094 /** 4095 * Adds a given new value for <b>adjudication</b> () 4096 * 4097 * <p> 4098 * <b>Definition:</b> 4099 * The adjudications results. 4100 * </p> 4101 * @param theValue The adjudication to add (must not be <code>null</code>) 4102 */ 4103 public AddItemDetail addAdjudication(AddItemDetailAdjudication theValue) { 4104 if (theValue == null) { 4105 throw new NullPointerException("theValue must not be null"); 4106 } 4107 getAdjudication().add(theValue); 4108 return this; 4109 } 4110 4111 /** 4112 * Gets the first repetition for <b>adjudication</b> (), 4113 * creating it if it does not already exist. 4114 * 4115 * <p> 4116 * <b>Definition:</b> 4117 * The adjudications results. 4118 * </p> 4119 */ 4120 public AddItemDetailAdjudication getAdjudicationFirstRep() { 4121 if (getAdjudication().isEmpty()) { 4122 return addAdjudication(); 4123 } 4124 return getAdjudication().get(0); 4125 } 4126 4127 4128 4129 } 4130 4131 /** 4132 * Block class for child element: <b>ClaimResponse.addItem.detail.adjudication</b> () 4133 * 4134 * <p> 4135 * <b>Definition:</b> 4136 * The adjudications results. 4137 * </p> 4138 */ 4139 @Block() 4140 public static class AddItemDetailAdjudication 4141 extends BaseIdentifiableElement 4142 implements IResourceBlock { 4143 4144 @Child(name="code", type=CodingDt.class, order=0, min=1, max=1, summary=false, modifier=false) 4145 @Description( 4146 shortDefinition="", 4147 formalDefinition="Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc." 4148 ) 4149 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-adjudication") 4150 private CodingDt myCode; 4151 4152 @Child(name="amount", type=MoneyDt.class, order=1, min=0, max=1, summary=false, modifier=false) 4153 @Description( 4154 shortDefinition="", 4155 formalDefinition="Monetary amount associated with the code" 4156 ) 4157 private MoneyDt myAmount; 4158 4159 @Child(name="value", type=DecimalDt.class, order=2, min=0, max=1, summary=false, modifier=false) 4160 @Description( 4161 shortDefinition="", 4162 formalDefinition="A non-monetary value for example a percentage. Mutually exclusive to the amount element above." 4163 ) 4164 private DecimalDt myValue; 4165 4166 4167 @Override 4168 public boolean isEmpty() { 4169 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myAmount, myValue); 4170 } 4171 4172 @Override 4173 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 4174 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myAmount, myValue); 4175 } 4176 4177 /** 4178 * Gets the value(s) for <b>code</b> (). 4179 * creating it if it does 4180 * not exist. Will not return <code>null</code>. 4181 * 4182 * <p> 4183 * <b>Definition:</b> 4184 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 4185 * </p> 4186 */ 4187 public CodingDt getCode() { 4188 if (myCode == null) { 4189 myCode = new CodingDt(); 4190 } 4191 return myCode; 4192 } 4193 4194 /** 4195 * Sets the value(s) for <b>code</b> () 4196 * 4197 * <p> 4198 * <b>Definition:</b> 4199 * Code indicating: Co-Pay, deductible, eligible, benefit, tax, etc. 4200 * </p> 4201 */ 4202 public AddItemDetailAdjudication setCode(CodingDt theValue) { 4203 myCode = theValue; 4204 return this; 4205 } 4206 4207 4208 4209 4210 /** 4211 * Gets the value(s) for <b>amount</b> (). 4212 * creating it if it does 4213 * not exist. Will not return <code>null</code>. 4214 * 4215 * <p> 4216 * <b>Definition:</b> 4217 * Monetary amount associated with the code 4218 * </p> 4219 */ 4220 public MoneyDt getAmount() { 4221 if (myAmount == null) { 4222 myAmount = new MoneyDt(); 4223 } 4224 return myAmount; 4225 } 4226 4227 /** 4228 * Sets the value(s) for <b>amount</b> () 4229 * 4230 * <p> 4231 * <b>Definition:</b> 4232 * Monetary amount associated with the code 4233 * </p> 4234 */ 4235 public AddItemDetailAdjudication setAmount(MoneyDt theValue) { 4236 myAmount = theValue; 4237 return this; 4238 } 4239 4240 4241 4242 4243 /** 4244 * Gets the value(s) for <b>value</b> (). 4245 * creating it if it does 4246 * not exist. Will not return <code>null</code>. 4247 * 4248 * <p> 4249 * <b>Definition:</b> 4250 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4251 * </p> 4252 */ 4253 public DecimalDt getValueElement() { 4254 if (myValue == null) { 4255 myValue = new DecimalDt(); 4256 } 4257 return myValue; 4258 } 4259 4260 4261 /** 4262 * Gets the value(s) for <b>value</b> (). 4263 * creating it if it does 4264 * not exist. This method may return <code>null</code>. 4265 * 4266 * <p> 4267 * <b>Definition:</b> 4268 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4269 * </p> 4270 */ 4271 public BigDecimal getValue() { 4272 return getValueElement().getValue(); 4273 } 4274 4275 /** 4276 * Sets the value(s) for <b>value</b> () 4277 * 4278 * <p> 4279 * <b>Definition:</b> 4280 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4281 * </p> 4282 */ 4283 public AddItemDetailAdjudication setValue(DecimalDt theValue) { 4284 myValue = theValue; 4285 return this; 4286 } 4287 4288 4289 4290 /** 4291 * Sets the value for <b>value</b> () 4292 * 4293 * <p> 4294 * <b>Definition:</b> 4295 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4296 * </p> 4297 */ 4298 public AddItemDetailAdjudication setValue( long theValue) { 4299 myValue = new DecimalDt(theValue); 4300 return this; 4301 } 4302 4303 /** 4304 * Sets the value for <b>value</b> () 4305 * 4306 * <p> 4307 * <b>Definition:</b> 4308 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4309 * </p> 4310 */ 4311 public AddItemDetailAdjudication setValue( double theValue) { 4312 myValue = new DecimalDt(theValue); 4313 return this; 4314 } 4315 4316 /** 4317 * Sets the value for <b>value</b> () 4318 * 4319 * <p> 4320 * <b>Definition:</b> 4321 * A non-monetary value for example a percentage. Mutually exclusive to the amount element above. 4322 * </p> 4323 */ 4324 public AddItemDetailAdjudication setValue( java.math.BigDecimal theValue) { 4325 myValue = new DecimalDt(theValue); 4326 return this; 4327 } 4328 4329 4330 4331 4332 } 4333 4334 4335 4336 4337 /** 4338 * Block class for child element: <b>ClaimResponse.error</b> () 4339 * 4340 * <p> 4341 * <b>Definition:</b> 4342 * Mutually exclusive with Services Provided (Item). 4343 * </p> 4344 */ 4345 @Block() 4346 public static class Error 4347 extends BaseIdentifiableElement 4348 implements IResourceBlock { 4349 4350 @Child(name="sequenceLinkId", type=PositiveIntDt.class, order=0, min=0, max=1, summary=false, modifier=false) 4351 @Description( 4352 shortDefinition="", 4353 formalDefinition="The sequence number of the line item submitted which contains the error. This value is omitted when the error is elsewhere." 4354 ) 4355 private PositiveIntDt mySequenceLinkId; 4356 4357 @Child(name="detailSequenceLinkId", type=PositiveIntDt.class, order=1, min=0, max=1, summary=false, modifier=false) 4358 @Description( 4359 shortDefinition="", 4360 formalDefinition="The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition." 4361 ) 4362 private PositiveIntDt myDetailSequenceLinkId; 4363 4364 @Child(name="subdetailSequenceLinkId", type=PositiveIntDt.class, order=2, min=0, max=1, summary=false, modifier=false) 4365 @Description( 4366 shortDefinition="", 4367 formalDefinition="The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition." 4368 ) 4369 private PositiveIntDt mySubdetailSequenceLinkId; 4370 4371 @Child(name="code", type=CodingDt.class, order=3, min=1, max=1, summary=false, modifier=false) 4372 @Description( 4373 shortDefinition="", 4374 formalDefinition="An error code,froma specified code system, which details why the claim could not be adjudicated." 4375 ) 4376 private CodingDt myCode; 4377 4378 4379 @Override 4380 public boolean isEmpty() { 4381 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequenceLinkId, myDetailSequenceLinkId, mySubdetailSequenceLinkId, myCode); 4382 } 4383 4384 @Override 4385 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 4386 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequenceLinkId, myDetailSequenceLinkId, mySubdetailSequenceLinkId, myCode); 4387 } 4388 4389 /** 4390 * Gets the value(s) for <b>sequenceLinkId</b> (). 4391 * creating it if it does 4392 * not exist. Will not return <code>null</code>. 4393 * 4394 * <p> 4395 * <b>Definition:</b> 4396 * The sequence number of the line item submitted which contains the error. This value is omitted when the error is elsewhere. 4397 * </p> 4398 */ 4399 public PositiveIntDt getSequenceLinkIdElement() { 4400 if (mySequenceLinkId == null) { 4401 mySequenceLinkId = new PositiveIntDt(); 4402 } 4403 return mySequenceLinkId; 4404 } 4405 4406 4407 /** 4408 * Gets the value(s) for <b>sequenceLinkId</b> (). 4409 * creating it if it does 4410 * not exist. This method may return <code>null</code>. 4411 * 4412 * <p> 4413 * <b>Definition:</b> 4414 * The sequence number of the line item submitted which contains the error. This value is omitted when the error is elsewhere. 4415 * </p> 4416 */ 4417 public Integer getSequenceLinkId() { 4418 return getSequenceLinkIdElement().getValue(); 4419 } 4420 4421 /** 4422 * Sets the value(s) for <b>sequenceLinkId</b> () 4423 * 4424 * <p> 4425 * <b>Definition:</b> 4426 * The sequence number of the line item submitted which contains the error. This value is omitted when the error is elsewhere. 4427 * </p> 4428 */ 4429 public Error setSequenceLinkId(PositiveIntDt theValue) { 4430 mySequenceLinkId = theValue; 4431 return this; 4432 } 4433 4434 4435 4436 /** 4437 * Sets the value for <b>sequenceLinkId</b> () 4438 * 4439 * <p> 4440 * <b>Definition:</b> 4441 * The sequence number of the line item submitted which contains the error. This value is omitted when the error is elsewhere. 4442 * </p> 4443 */ 4444 public Error setSequenceLinkId( int theInteger) { 4445 mySequenceLinkId = new PositiveIntDt(theInteger); 4446 return this; 4447 } 4448 4449 4450 /** 4451 * Gets the value(s) for <b>detailSequenceLinkId</b> (). 4452 * creating it if it does 4453 * not exist. Will not return <code>null</code>. 4454 * 4455 * <p> 4456 * <b>Definition:</b> 4457 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4458 * </p> 4459 */ 4460 public PositiveIntDt getDetailSequenceLinkIdElement() { 4461 if (myDetailSequenceLinkId == null) { 4462 myDetailSequenceLinkId = new PositiveIntDt(); 4463 } 4464 return myDetailSequenceLinkId; 4465 } 4466 4467 4468 /** 4469 * Gets the value(s) for <b>detailSequenceLinkId</b> (). 4470 * creating it if it does 4471 * not exist. This method may return <code>null</code>. 4472 * 4473 * <p> 4474 * <b>Definition:</b> 4475 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4476 * </p> 4477 */ 4478 public Integer getDetailSequenceLinkId() { 4479 return getDetailSequenceLinkIdElement().getValue(); 4480 } 4481 4482 /** 4483 * Sets the value(s) for <b>detailSequenceLinkId</b> () 4484 * 4485 * <p> 4486 * <b>Definition:</b> 4487 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4488 * </p> 4489 */ 4490 public Error setDetailSequenceLinkId(PositiveIntDt theValue) { 4491 myDetailSequenceLinkId = theValue; 4492 return this; 4493 } 4494 4495 4496 4497 /** 4498 * Sets the value for <b>detailSequenceLinkId</b> () 4499 * 4500 * <p> 4501 * <b>Definition:</b> 4502 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4503 * </p> 4504 */ 4505 public Error setDetailSequenceLinkId( int theInteger) { 4506 myDetailSequenceLinkId = new PositiveIntDt(theInteger); 4507 return this; 4508 } 4509 4510 4511 /** 4512 * Gets the value(s) for <b>subdetailSequenceLinkId</b> (). 4513 * creating it if it does 4514 * not exist. Will not return <code>null</code>. 4515 * 4516 * <p> 4517 * <b>Definition:</b> 4518 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4519 * </p> 4520 */ 4521 public PositiveIntDt getSubdetailSequenceLinkIdElement() { 4522 if (mySubdetailSequenceLinkId == null) { 4523 mySubdetailSequenceLinkId = new PositiveIntDt(); 4524 } 4525 return mySubdetailSequenceLinkId; 4526 } 4527 4528 4529 /** 4530 * Gets the value(s) for <b>subdetailSequenceLinkId</b> (). 4531 * creating it if it does 4532 * not exist. This method may return <code>null</code>. 4533 * 4534 * <p> 4535 * <b>Definition:</b> 4536 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4537 * </p> 4538 */ 4539 public Integer getSubdetailSequenceLinkId() { 4540 return getSubdetailSequenceLinkIdElement().getValue(); 4541 } 4542 4543 /** 4544 * Sets the value(s) for <b>subdetailSequenceLinkId</b> () 4545 * 4546 * <p> 4547 * <b>Definition:</b> 4548 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4549 * </p> 4550 */ 4551 public Error setSubdetailSequenceLinkId(PositiveIntDt theValue) { 4552 mySubdetailSequenceLinkId = theValue; 4553 return this; 4554 } 4555 4556 4557 4558 /** 4559 * Sets the value for <b>subdetailSequenceLinkId</b> () 4560 * 4561 * <p> 4562 * <b>Definition:</b> 4563 * The sequence number of the addition within the line item submitted which contains the error. This value is omitted when the error is not related to an Addition. 4564 * </p> 4565 */ 4566 public Error setSubdetailSequenceLinkId( int theInteger) { 4567 mySubdetailSequenceLinkId = new PositiveIntDt(theInteger); 4568 return this; 4569 } 4570 4571 4572 /** 4573 * Gets the value(s) for <b>code</b> (). 4574 * creating it if it does 4575 * not exist. Will not return <code>null</code>. 4576 * 4577 * <p> 4578 * <b>Definition:</b> 4579 * An error code,froma specified code system, which details why the claim could not be adjudicated. 4580 * </p> 4581 */ 4582 public CodingDt getCode() { 4583 if (myCode == null) { 4584 myCode = new CodingDt(); 4585 } 4586 return myCode; 4587 } 4588 4589 /** 4590 * Sets the value(s) for <b>code</b> () 4591 * 4592 * <p> 4593 * <b>Definition:</b> 4594 * An error code,froma specified code system, which details why the claim could not be adjudicated. 4595 * </p> 4596 */ 4597 public Error setCode(CodingDt theValue) { 4598 myCode = theValue; 4599 return this; 4600 } 4601 4602 4603 4604 4605 4606 4607 } 4608 4609 4610 /** 4611 * Block class for child element: <b>ClaimResponse.note</b> () 4612 * 4613 * <p> 4614 * <b>Definition:</b> 4615 * Note text 4616 * </p> 4617 */ 4618 @Block() 4619 public static class Note 4620 extends BaseIdentifiableElement 4621 implements IResourceBlock { 4622 4623 @Child(name="number", type=PositiveIntDt.class, order=0, min=0, max=1, summary=false, modifier=false) 4624 @Description( 4625 shortDefinition="", 4626 formalDefinition="An integer associated with each note which may be referred to from each service line item." 4627 ) 4628 private PositiveIntDt myNumber; 4629 4630 @Child(name="type", type=CodingDt.class, order=1, min=0, max=1, summary=false, modifier=false) 4631 @Description( 4632 shortDefinition="", 4633 formalDefinition="The note purpose: Print/Display." 4634 ) 4635 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/note-type") 4636 private CodingDt myType; 4637 4638 @Child(name="text", type=StringDt.class, order=2, min=0, max=1, summary=false, modifier=false) 4639 @Description( 4640 shortDefinition="", 4641 formalDefinition="The note text." 4642 ) 4643 private StringDt myText; 4644 4645 4646 @Override 4647 public boolean isEmpty() { 4648 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myNumber, myType, myText); 4649 } 4650 4651 @Override 4652 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 4653 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myNumber, myType, myText); 4654 } 4655 4656 /** 4657 * Gets the value(s) for <b>number</b> (). 4658 * creating it if it does 4659 * not exist. Will not return <code>null</code>. 4660 * 4661 * <p> 4662 * <b>Definition:</b> 4663 * An integer associated with each note which may be referred to from each service line item. 4664 * </p> 4665 */ 4666 public PositiveIntDt getNumberElement() { 4667 if (myNumber == null) { 4668 myNumber = new PositiveIntDt(); 4669 } 4670 return myNumber; 4671 } 4672 4673 4674 /** 4675 * Gets the value(s) for <b>number</b> (). 4676 * creating it if it does 4677 * not exist. This method may return <code>null</code>. 4678 * 4679 * <p> 4680 * <b>Definition:</b> 4681 * An integer associated with each note which may be referred to from each service line item. 4682 * </p> 4683 */ 4684 public Integer getNumber() { 4685 return getNumberElement().getValue(); 4686 } 4687 4688 /** 4689 * Sets the value(s) for <b>number</b> () 4690 * 4691 * <p> 4692 * <b>Definition:</b> 4693 * An integer associated with each note which may be referred to from each service line item. 4694 * </p> 4695 */ 4696 public Note setNumber(PositiveIntDt theValue) { 4697 myNumber = theValue; 4698 return this; 4699 } 4700 4701 4702 4703 /** 4704 * Sets the value for <b>number</b> () 4705 * 4706 * <p> 4707 * <b>Definition:</b> 4708 * An integer associated with each note which may be referred to from each service line item. 4709 * </p> 4710 */ 4711 public Note setNumber( int theInteger) { 4712 myNumber = new PositiveIntDt(theInteger); 4713 return this; 4714 } 4715 4716 4717 /** 4718 * Gets the value(s) for <b>type</b> (). 4719 * creating it if it does 4720 * not exist. Will not return <code>null</code>. 4721 * 4722 * <p> 4723 * <b>Definition:</b> 4724 * The note purpose: Print/Display. 4725 * </p> 4726 */ 4727 public CodingDt getType() { 4728 if (myType == null) { 4729 myType = new CodingDt(); 4730 } 4731 return myType; 4732 } 4733 4734 /** 4735 * Sets the value(s) for <b>type</b> () 4736 * 4737 * <p> 4738 * <b>Definition:</b> 4739 * The note purpose: Print/Display. 4740 * </p> 4741 */ 4742 public Note setType(CodingDt theValue) { 4743 myType = theValue; 4744 return this; 4745 } 4746 4747 4748 4749 4750 /** 4751 * Gets the value(s) for <b>text</b> (). 4752 * creating it if it does 4753 * not exist. Will not return <code>null</code>. 4754 * 4755 * <p> 4756 * <b>Definition:</b> 4757 * The note text. 4758 * </p> 4759 */ 4760 public StringDt getTextElement() { 4761 if (myText == null) { 4762 myText = new StringDt(); 4763 } 4764 return myText; 4765 } 4766 4767 4768 /** 4769 * Gets the value(s) for <b>text</b> (). 4770 * creating it if it does 4771 * not exist. This method may return <code>null</code>. 4772 * 4773 * <p> 4774 * <b>Definition:</b> 4775 * The note text. 4776 * </p> 4777 */ 4778 public String getText() { 4779 return getTextElement().getValue(); 4780 } 4781 4782 /** 4783 * Sets the value(s) for <b>text</b> () 4784 * 4785 * <p> 4786 * <b>Definition:</b> 4787 * The note text. 4788 * </p> 4789 */ 4790 public Note setText(StringDt theValue) { 4791 myText = theValue; 4792 return this; 4793 } 4794 4795 4796 4797 /** 4798 * Sets the value for <b>text</b> () 4799 * 4800 * <p> 4801 * <b>Definition:</b> 4802 * The note text. 4803 * </p> 4804 */ 4805 public Note setText( String theString) { 4806 myText = new StringDt(theString); 4807 return this; 4808 } 4809 4810 4811 4812 4813 } 4814 4815 4816 /** 4817 * Block class for child element: <b>ClaimResponse.coverage</b> () 4818 * 4819 * <p> 4820 * <b>Definition:</b> 4821 * Financial instrument by which payment information for health care 4822 * </p> 4823 */ 4824 @Block() 4825 public static class Coverage 4826 extends BaseIdentifiableElement 4827 implements IResourceBlock { 4828 4829 @Child(name="sequence", type=PositiveIntDt.class, order=0, min=1, max=1, summary=false, modifier=false) 4830 @Description( 4831 shortDefinition="", 4832 formalDefinition="A service line item." 4833 ) 4834 private PositiveIntDt mySequence; 4835 4836 @Child(name="focal", type=BooleanDt.class, order=1, min=1, max=1, summary=false, modifier=false) 4837 @Description( 4838 shortDefinition="", 4839 formalDefinition="The instance number of the Coverage which is the focus for adjudication. The Coverage against which the claim is to be adjudicated." 4840 ) 4841 private BooleanDt myFocal; 4842 4843 @Child(name="coverage", order=2, min=1, max=1, summary=false, modifier=false, type={ 4844 ca.uhn.fhir.model.dstu2.resource.Coverage.class 4845 }) 4846 @Description( 4847 shortDefinition="", 4848 formalDefinition="Reference to the program or plan identification, underwriter or payor." 4849 ) 4850 private ResourceReferenceDt myCoverage; 4851 4852 @Child(name="businessArrangement", type=StringDt.class, order=3, min=0, max=1, summary=false, modifier=false) 4853 @Description( 4854 shortDefinition="", 4855 formalDefinition="The contract number of a business agreement which describes the terms and conditions." 4856 ) 4857 private StringDt myBusinessArrangement; 4858 4859 @Child(name="relationship", type=CodingDt.class, order=4, min=1, max=1, summary=false, modifier=false) 4860 @Description( 4861 shortDefinition="", 4862 formalDefinition="The relationship of the patient to the subscriber" 4863 ) 4864 private CodingDt myRelationship; 4865 4866 @Child(name="preAuthRef", type=StringDt.class, order=5, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 4867 @Description( 4868 shortDefinition="", 4869 formalDefinition="A list of references from the Insurer to which these services pertain." 4870 ) 4871 private java.util.List<StringDt> myPreAuthRef; 4872 4873 @Child(name="claimResponse", order=6, min=0, max=1, summary=false, modifier=false, type={ 4874 ca.uhn.fhir.model.dstu2.resource.ClaimResponse.class 4875 }) 4876 @Description( 4877 shortDefinition="", 4878 formalDefinition="The Coverages adjudication details." 4879 ) 4880 private ResourceReferenceDt myClaimResponse; 4881 4882 @Child(name="originalRuleset", type=CodingDt.class, order=7, min=0, max=1, summary=false, modifier=false) 4883 @Description( 4884 shortDefinition="", 4885 formalDefinition="The style (standard) and version of the original material which was converted into this resource." 4886 ) 4887 private CodingDt myOriginalRuleset; 4888 4889 4890 @Override 4891 public boolean isEmpty() { 4892 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( mySequence, myFocal, myCoverage, myBusinessArrangement, myRelationship, myPreAuthRef, myClaimResponse, myOriginalRuleset); 4893 } 4894 4895 @Override 4896 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 4897 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, mySequence, myFocal, myCoverage, myBusinessArrangement, myRelationship, myPreAuthRef, myClaimResponse, myOriginalRuleset); 4898 } 4899 4900 /** 4901 * Gets the value(s) for <b>sequence</b> (). 4902 * creating it if it does 4903 * not exist. Will not return <code>null</code>. 4904 * 4905 * <p> 4906 * <b>Definition:</b> 4907 * A service line item. 4908 * </p> 4909 */ 4910 public PositiveIntDt getSequenceElement() { 4911 if (mySequence == null) { 4912 mySequence = new PositiveIntDt(); 4913 } 4914 return mySequence; 4915 } 4916 4917 4918 /** 4919 * Gets the value(s) for <b>sequence</b> (). 4920 * creating it if it does 4921 * not exist. This method may return <code>null</code>. 4922 * 4923 * <p> 4924 * <b>Definition:</b> 4925 * A service line item. 4926 * </p> 4927 */ 4928 public Integer getSequence() { 4929 return getSequenceElement().getValue(); 4930 } 4931 4932 /** 4933 * Sets the value(s) for <b>sequence</b> () 4934 * 4935 * <p> 4936 * <b>Definition:</b> 4937 * A service line item. 4938 * </p> 4939 */ 4940 public Coverage setSequence(PositiveIntDt theValue) { 4941 mySequence = theValue; 4942 return this; 4943 } 4944 4945 4946 4947 /** 4948 * Sets the value for <b>sequence</b> () 4949 * 4950 * <p> 4951 * <b>Definition:</b> 4952 * A service line item. 4953 * </p> 4954 */ 4955 public Coverage setSequence( int theInteger) { 4956 mySequence = new PositiveIntDt(theInteger); 4957 return this; 4958 } 4959 4960 4961 /** 4962 * Gets the value(s) for <b>focal</b> (). 4963 * creating it if it does 4964 * not exist. Will not return <code>null</code>. 4965 * 4966 * <p> 4967 * <b>Definition:</b> 4968 * The instance number of the Coverage which is the focus for adjudication. The Coverage against which the claim is to be adjudicated. 4969 * </p> 4970 */ 4971 public BooleanDt getFocalElement() { 4972 if (myFocal == null) { 4973 myFocal = new BooleanDt(); 4974 } 4975 return myFocal; 4976 } 4977 4978 4979 /** 4980 * Gets the value(s) for <b>focal</b> (). 4981 * creating it if it does 4982 * not exist. This method may return <code>null</code>. 4983 * 4984 * <p> 4985 * <b>Definition:</b> 4986 * The instance number of the Coverage which is the focus for adjudication. The Coverage against which the claim is to be adjudicated. 4987 * </p> 4988 */ 4989 public Boolean getFocal() { 4990 return getFocalElement().getValue(); 4991 } 4992 4993 /** 4994 * Sets the value(s) for <b>focal</b> () 4995 * 4996 * <p> 4997 * <b>Definition:</b> 4998 * The instance number of the Coverage which is the focus for adjudication. The Coverage against which the claim is to be adjudicated. 4999 * </p> 5000 */ 5001 public Coverage setFocal(BooleanDt theValue) { 5002 myFocal = theValue; 5003 return this; 5004 } 5005 5006 5007 5008 /** 5009 * Sets the value for <b>focal</b> () 5010 * 5011 * <p> 5012 * <b>Definition:</b> 5013 * The instance number of the Coverage which is the focus for adjudication. The Coverage against which the claim is to be adjudicated. 5014 * </p> 5015 */ 5016 public Coverage setFocal( boolean theBoolean) { 5017 myFocal = new BooleanDt(theBoolean); 5018 return this; 5019 } 5020 5021 5022 /** 5023 * Gets the value(s) for <b>coverage</b> (). 5024 * creating it if it does 5025 * not exist. Will not return <code>null</code>. 5026 * 5027 * <p> 5028 * <b>Definition:</b> 5029 * Reference to the program or plan identification, underwriter or payor. 5030 * </p> 5031 */ 5032 public ResourceReferenceDt getCoverage() { 5033 if (myCoverage == null) { 5034 myCoverage = new ResourceReferenceDt(); 5035 } 5036 return myCoverage; 5037 } 5038 5039 /** 5040 * Sets the value(s) for <b>coverage</b> () 5041 * 5042 * <p> 5043 * <b>Definition:</b> 5044 * Reference to the program or plan identification, underwriter or payor. 5045 * </p> 5046 */ 5047 public Coverage setCoverage(ResourceReferenceDt theValue) { 5048 myCoverage = theValue; 5049 return this; 5050 } 5051 5052 5053 5054 5055 /** 5056 * Gets the value(s) for <b>businessArrangement</b> (). 5057 * creating it if it does 5058 * not exist. Will not return <code>null</code>. 5059 * 5060 * <p> 5061 * <b>Definition:</b> 5062 * The contract number of a business agreement which describes the terms and conditions. 5063 * </p> 5064 */ 5065 public StringDt getBusinessArrangementElement() { 5066 if (myBusinessArrangement == null) { 5067 myBusinessArrangement = new StringDt(); 5068 } 5069 return myBusinessArrangement; 5070 } 5071 5072 5073 /** 5074 * Gets the value(s) for <b>businessArrangement</b> (). 5075 * creating it if it does 5076 * not exist. This method may return <code>null</code>. 5077 * 5078 * <p> 5079 * <b>Definition:</b> 5080 * The contract number of a business agreement which describes the terms and conditions. 5081 * </p> 5082 */ 5083 public String getBusinessArrangement() { 5084 return getBusinessArrangementElement().getValue(); 5085 } 5086 5087 /** 5088 * Sets the value(s) for <b>businessArrangement</b> () 5089 * 5090 * <p> 5091 * <b>Definition:</b> 5092 * The contract number of a business agreement which describes the terms and conditions. 5093 * </p> 5094 */ 5095 public Coverage setBusinessArrangement(StringDt theValue) { 5096 myBusinessArrangement = theValue; 5097 return this; 5098 } 5099 5100 5101 5102 /** 5103 * Sets the value for <b>businessArrangement</b> () 5104 * 5105 * <p> 5106 * <b>Definition:</b> 5107 * The contract number of a business agreement which describes the terms and conditions. 5108 * </p> 5109 */ 5110 public Coverage setBusinessArrangement( String theString) { 5111 myBusinessArrangement = new StringDt(theString); 5112 return this; 5113 } 5114 5115 5116 /** 5117 * Gets the value(s) for <b>relationship</b> (). 5118 * creating it if it does 5119 * not exist. Will not return <code>null</code>. 5120 * 5121 * <p> 5122 * <b>Definition:</b> 5123 * The relationship of the patient to the subscriber 5124 * </p> 5125 */ 5126 public CodingDt getRelationship() { 5127 if (myRelationship == null) { 5128 myRelationship = new CodingDt(); 5129 } 5130 return myRelationship; 5131 } 5132 5133 /** 5134 * Sets the value(s) for <b>relationship</b> () 5135 * 5136 * <p> 5137 * <b>Definition:</b> 5138 * The relationship of the patient to the subscriber 5139 * </p> 5140 */ 5141 public Coverage setRelationship(CodingDt theValue) { 5142 myRelationship = theValue; 5143 return this; 5144 } 5145 5146 5147 5148 5149 /** 5150 * Gets the value(s) for <b>preAuthRef</b> (). 5151 * creating it if it does 5152 * not exist. Will not return <code>null</code>. 5153 * 5154 * <p> 5155 * <b>Definition:</b> 5156 * A list of references from the Insurer to which these services pertain. 5157 * </p> 5158 */ 5159 public java.util.List<StringDt> getPreAuthRef() { 5160 if (myPreAuthRef == null) { 5161 myPreAuthRef = new java.util.ArrayList<StringDt>(); 5162 } 5163 return myPreAuthRef; 5164 } 5165 5166 /** 5167 * Sets the value(s) for <b>preAuthRef</b> () 5168 * 5169 * <p> 5170 * <b>Definition:</b> 5171 * A list of references from the Insurer to which these services pertain. 5172 * </p> 5173 */ 5174 public Coverage setPreAuthRef(java.util.List<StringDt> theValue) { 5175 myPreAuthRef = theValue; 5176 return this; 5177 } 5178 5179 5180 5181 /** 5182 * Adds and returns a new value for <b>preAuthRef</b> () 5183 * 5184 * <p> 5185 * <b>Definition:</b> 5186 * A list of references from the Insurer to which these services pertain. 5187 * </p> 5188 */ 5189 public StringDt addPreAuthRef() { 5190 StringDt newType = new StringDt(); 5191 getPreAuthRef().add(newType); 5192 return newType; 5193 } 5194 5195 /** 5196 * Adds a given new value for <b>preAuthRef</b> () 5197 * 5198 * <p> 5199 * <b>Definition:</b> 5200 * A list of references from the Insurer to which these services pertain. 5201 * </p> 5202 * @param theValue The preAuthRef to add (must not be <code>null</code>) 5203 */ 5204 public Coverage addPreAuthRef(StringDt theValue) { 5205 if (theValue == null) { 5206 throw new NullPointerException("theValue must not be null"); 5207 } 5208 getPreAuthRef().add(theValue); 5209 return this; 5210 } 5211 5212 /** 5213 * Gets the first repetition for <b>preAuthRef</b> (), 5214 * creating it if it does not already exist. 5215 * 5216 * <p> 5217 * <b>Definition:</b> 5218 * A list of references from the Insurer to which these services pertain. 5219 * </p> 5220 */ 5221 public StringDt getPreAuthRefFirstRep() { 5222 if (getPreAuthRef().isEmpty()) { 5223 return addPreAuthRef(); 5224 } 5225 return getPreAuthRef().get(0); 5226 } 5227 /** 5228 * Adds a new value for <b>preAuthRef</b> () 5229 * 5230 * <p> 5231 * <b>Definition:</b> 5232 * A list of references from the Insurer to which these services pertain. 5233 * </p> 5234 * 5235 * @return Returns a reference to this object, to allow for simple chaining. 5236 */ 5237 public Coverage addPreAuthRef( String theString) { 5238 if (myPreAuthRef == null) { 5239 myPreAuthRef = new java.util.ArrayList<StringDt>(); 5240 } 5241 myPreAuthRef.add(new StringDt(theString)); 5242 return this; 5243 } 5244 5245 5246 /** 5247 * Gets the value(s) for <b>claimResponse</b> (). 5248 * creating it if it does 5249 * not exist. Will not return <code>null</code>. 5250 * 5251 * <p> 5252 * <b>Definition:</b> 5253 * The Coverages adjudication details. 5254 * </p> 5255 */ 5256 public ResourceReferenceDt getClaimResponse() { 5257 if (myClaimResponse == null) { 5258 myClaimResponse = new ResourceReferenceDt(); 5259 } 5260 return myClaimResponse; 5261 } 5262 5263 /** 5264 * Sets the value(s) for <b>claimResponse</b> () 5265 * 5266 * <p> 5267 * <b>Definition:</b> 5268 * The Coverages adjudication details. 5269 * </p> 5270 */ 5271 public Coverage setClaimResponse(ResourceReferenceDt theValue) { 5272 myClaimResponse = theValue; 5273 return this; 5274 } 5275 5276 5277 5278 5279 /** 5280 * Gets the value(s) for <b>originalRuleset</b> (). 5281 * creating it if it does 5282 * not exist. Will not return <code>null</code>. 5283 * 5284 * <p> 5285 * <b>Definition:</b> 5286 * The style (standard) and version of the original material which was converted into this resource. 5287 * </p> 5288 */ 5289 public CodingDt getOriginalRuleset() { 5290 if (myOriginalRuleset == null) { 5291 myOriginalRuleset = new CodingDt(); 5292 } 5293 return myOriginalRuleset; 5294 } 5295 5296 /** 5297 * Sets the value(s) for <b>originalRuleset</b> () 5298 * 5299 * <p> 5300 * <b>Definition:</b> 5301 * The style (standard) and version of the original material which was converted into this resource. 5302 * </p> 5303 */ 5304 public Coverage setOriginalRuleset(CodingDt theValue) { 5305 myOriginalRuleset = theValue; 5306 return this; 5307 } 5308 5309 5310 5311 5312 5313 5314 } 5315 5316 5317 5318 5319 @Override 5320 public String getResourceName() { 5321 return "ClaimResponse"; 5322 } 5323 5324 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 5325 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 5326 } 5327 5328 5329}