org.hl7.fhir.ExplanationOfBenefit Maven / Gradle / Ivy
Show all versions of quick Show documentation
//
// This file was generated by the Eclipse Implementation of JAXB, v3.0.2
// See https://eclipse-ee4j.github.io/jaxb-ri
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2024.03.21 at 12:42:34 PM MDT
//
package org.hl7.fhir;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;
import org.jvnet.jaxb2_commons.lang.Equals2;
import org.jvnet.jaxb2_commons.lang.EqualsStrategy2;
import org.jvnet.jaxb2_commons.lang.HashCode2;
import org.jvnet.jaxb2_commons.lang.HashCodeStrategy2;
import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
import org.jvnet.jaxb2_commons.lang.ToString2;
import org.jvnet.jaxb2_commons.lang.ToStringStrategy2;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
/**
* If the element is present, it must have either a @value, an @id, or extensions
*
* Java class for ExplanationOfBenefit complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ExplanationOfBenefit">
* <complexContent>
* <extension base="{http://hl7.org/fhir}DomainResource">
* <sequence>
* <element name="identifier" type="{http://hl7.org/fhir}Identifier" maxOccurs="unbounded" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="claimIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="claimReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <choice minOccurs="0">
* <element name="claimResponseIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="claimResponseReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="subType" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="ruleset" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="originalRuleset" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="created" type="{http://hl7.org/fhir}dateTime" minOccurs="0"/>
* <element name="billablePeriod" type="{http://hl7.org/fhir}Period" minOccurs="0"/>
* <element name="disposition" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="providerIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="providerReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <choice minOccurs="0">
* <element name="organizationIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="organizationReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <choice minOccurs="0">
* <element name="facilityIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="facilityReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="related" type="{http://hl7.org/fhir}ExplanationOfBenefit.Related" maxOccurs="unbounded" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="prescriptionIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="prescriptionReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <choice minOccurs="0">
* <element name="originalPrescriptionIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="originalPrescriptionReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="payee" type="{http://hl7.org/fhir}ExplanationOfBenefit.Payee" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="referralIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="referralReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="occurrenceCode" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="occurenceSpanCode" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="valueCode" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="diagnosis" type="{http://hl7.org/fhir}ExplanationOfBenefit.Diagnosis" maxOccurs="unbounded" minOccurs="0"/>
* <element name="procedure" type="{http://hl7.org/fhir}ExplanationOfBenefit.Procedure" maxOccurs="unbounded" minOccurs="0"/>
* <element name="specialCondition" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <choice>
* <element name="patientIdentifier" type="{http://hl7.org/fhir}Identifier"/>
* <element name="patientReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="precedence" type="{http://hl7.org/fhir}positiveInt" minOccurs="0"/>
* <element name="coverage" type="{http://hl7.org/fhir}ExplanationOfBenefit.Coverage"/>
* <element name="accidentDate" type="{http://hl7.org/fhir}date" minOccurs="0"/>
* <element name="accidentType" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="accidentLocationAddress" type="{http://hl7.org/fhir}Address"/>
* <element name="accidentLocationReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="interventionException" type="{http://hl7.org/fhir}Coding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="onset" type="{http://hl7.org/fhir}ExplanationOfBenefit.Onset" maxOccurs="unbounded" minOccurs="0"/>
* <element name="employmentImpacted" type="{http://hl7.org/fhir}Period" minOccurs="0"/>
* <element name="hospitalization" type="{http://hl7.org/fhir}Period" minOccurs="0"/>
* <element name="item" type="{http://hl7.org/fhir}ExplanationOfBenefit.Item" maxOccurs="unbounded" minOccurs="0"/>
* <element name="addItem" type="{http://hl7.org/fhir}ExplanationOfBenefit.AddItem" maxOccurs="unbounded" minOccurs="0"/>
* <element name="missingTeeth" type="{http://hl7.org/fhir}ExplanationOfBenefit.MissingTeeth" maxOccurs="unbounded" minOccurs="0"/>
* <element name="totalCost" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="unallocDeductable" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="totalBenefit" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="paymentAdjustment" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="paymentAdjustmentReason" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="paymentDate" type="{http://hl7.org/fhir}date" minOccurs="0"/>
* <element name="paymentAmount" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="paymentRef" type="{http://hl7.org/fhir}Identifier" minOccurs="0"/>
* <element name="reserved" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="form" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="note" type="{http://hl7.org/fhir}ExplanationOfBenefit.Note" maxOccurs="unbounded" minOccurs="0"/>
* <element name="benefitBalance" type="{http://hl7.org/fhir}ExplanationOfBenefit.BenefitBalance" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ExplanationOfBenefit", propOrder = {
"identifier",
"claimIdentifier",
"claimReference",
"claimResponseIdentifier",
"claimResponseReference",
"subType",
"ruleset",
"originalRuleset",
"created",
"billablePeriod",
"disposition",
"providerIdentifier",
"providerReference",
"organizationIdentifier",
"organizationReference",
"facilityIdentifier",
"facilityReference",
"related",
"prescriptionIdentifier",
"prescriptionReference",
"originalPrescriptionIdentifier",
"originalPrescriptionReference",
"payee",
"referralIdentifier",
"referralReference",
"occurrenceCode",
"occurenceSpanCode",
"valueCode",
"diagnosis",
"procedure",
"specialCondition",
"patientIdentifier",
"patientReference",
"precedence",
"coverage",
"accidentDate",
"accidentType",
"accidentLocationAddress",
"accidentLocationReference",
"interventionException",
"onset",
"employmentImpacted",
"hospitalization",
"item",
"addItem",
"missingTeeth",
"totalCost",
"unallocDeductable",
"totalBenefit",
"paymentAdjustment",
"paymentAdjustmentReason",
"paymentDate",
"paymentAmount",
"paymentRef",
"reserved",
"form",
"note",
"benefitBalance"
})
public class ExplanationOfBenefit
extends DomainResource
implements Equals2, HashCode2, ToString2
{
protected List identifier;
protected Identifier claimIdentifier;
protected Reference claimReference;
protected Identifier claimResponseIdentifier;
protected Reference claimResponseReference;
protected List subType;
protected Coding ruleset;
protected Coding originalRuleset;
protected DateTime created;
protected Period billablePeriod;
protected org.hl7.fhir.String disposition;
protected Identifier providerIdentifier;
protected Reference providerReference;
protected Identifier organizationIdentifier;
protected Reference organizationReference;
protected Identifier facilityIdentifier;
protected Reference facilityReference;
protected List related;
protected Identifier prescriptionIdentifier;
protected Reference prescriptionReference;
protected Identifier originalPrescriptionIdentifier;
protected Reference originalPrescriptionReference;
protected ExplanationOfBenefitPayee payee;
protected Identifier referralIdentifier;
protected Reference referralReference;
protected List occurrenceCode;
protected List occurenceSpanCode;
protected List valueCode;
protected List diagnosis;
protected List procedure;
protected List specialCondition;
protected Identifier patientIdentifier;
protected Reference patientReference;
protected PositiveInt precedence;
@XmlElement(required = true)
protected ExplanationOfBenefitCoverage coverage;
protected Date accidentDate;
protected Coding accidentType;
protected Address accidentLocationAddress;
protected Reference accidentLocationReference;
protected List interventionException;
protected List onset;
protected Period employmentImpacted;
protected Period hospitalization;
protected List item;
protected List addItem;
protected List missingTeeth;
protected Money totalCost;
protected Money unallocDeductable;
protected Money totalBenefit;
protected Money paymentAdjustment;
protected Coding paymentAdjustmentReason;
protected Date paymentDate;
protected Money paymentAmount;
protected Identifier paymentRef;
protected Coding reserved;
protected Coding form;
protected List note;
protected List benefitBalance;
/**
* Gets the value of the identifier property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the identifier property.
*
*
* For example, to add a new item, do as follows:
*
* getIdentifier().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Identifier }
*
*
*/
public List getIdentifier() {
if (identifier == null) {
identifier = new ArrayList();
}
return this.identifier;
}
/**
* Gets the value of the claimIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getClaimIdentifier() {
return claimIdentifier;
}
/**
* Sets the value of the claimIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setClaimIdentifier(Identifier value) {
this.claimIdentifier = value;
}
/**
* Gets the value of the claimReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getClaimReference() {
return claimReference;
}
/**
* Sets the value of the claimReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setClaimReference(Reference value) {
this.claimReference = value;
}
/**
* Gets the value of the claimResponseIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getClaimResponseIdentifier() {
return claimResponseIdentifier;
}
/**
* Sets the value of the claimResponseIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setClaimResponseIdentifier(Identifier value) {
this.claimResponseIdentifier = value;
}
/**
* Gets the value of the claimResponseReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getClaimResponseReference() {
return claimResponseReference;
}
/**
* Sets the value of the claimResponseReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setClaimResponseReference(Reference value) {
this.claimResponseReference = value;
}
/**
* Gets the value of the subType property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the subType property.
*
*
* For example, to add a new item, do as follows:
*
* getSubType().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getSubType() {
if (subType == null) {
subType = new ArrayList();
}
return this.subType;
}
/**
* Gets the value of the ruleset property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getRuleset() {
return ruleset;
}
/**
* Sets the value of the ruleset property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setRuleset(Coding value) {
this.ruleset = value;
}
/**
* Gets the value of the originalRuleset property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getOriginalRuleset() {
return originalRuleset;
}
/**
* Sets the value of the originalRuleset property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setOriginalRuleset(Coding value) {
this.originalRuleset = value;
}
/**
* Gets the value of the created property.
*
* @return
* possible object is
* {@link DateTime }
*
*/
public DateTime getCreated() {
return created;
}
/**
* Sets the value of the created property.
*
* @param value
* allowed object is
* {@link DateTime }
*
*/
public void setCreated(DateTime value) {
this.created = value;
}
/**
* Gets the value of the billablePeriod property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getBillablePeriod() {
return billablePeriod;
}
/**
* Sets the value of the billablePeriod property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setBillablePeriod(Period value) {
this.billablePeriod = value;
}
/**
* Gets the value of the disposition property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getDisposition() {
return disposition;
}
/**
* Sets the value of the disposition property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setDisposition(org.hl7.fhir.String value) {
this.disposition = value;
}
/**
* Gets the value of the providerIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getProviderIdentifier() {
return providerIdentifier;
}
/**
* Sets the value of the providerIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setProviderIdentifier(Identifier value) {
this.providerIdentifier = value;
}
/**
* Gets the value of the providerReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getProviderReference() {
return providerReference;
}
/**
* Sets the value of the providerReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setProviderReference(Reference value) {
this.providerReference = value;
}
/**
* Gets the value of the organizationIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getOrganizationIdentifier() {
return organizationIdentifier;
}
/**
* Sets the value of the organizationIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setOrganizationIdentifier(Identifier value) {
this.organizationIdentifier = value;
}
/**
* Gets the value of the organizationReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getOrganizationReference() {
return organizationReference;
}
/**
* Sets the value of the organizationReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setOrganizationReference(Reference value) {
this.organizationReference = value;
}
/**
* Gets the value of the facilityIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getFacilityIdentifier() {
return facilityIdentifier;
}
/**
* Sets the value of the facilityIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setFacilityIdentifier(Identifier value) {
this.facilityIdentifier = value;
}
/**
* Gets the value of the facilityReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getFacilityReference() {
return facilityReference;
}
/**
* Sets the value of the facilityReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setFacilityReference(Reference value) {
this.facilityReference = value;
}
/**
* Gets the value of the related property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the related property.
*
*
* For example, to add a new item, do as follows:
*
* getRelated().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitRelated }
*
*
*/
public List getRelated() {
if (related == null) {
related = new ArrayList();
}
return this.related;
}
/**
* Gets the value of the prescriptionIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getPrescriptionIdentifier() {
return prescriptionIdentifier;
}
/**
* Sets the value of the prescriptionIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setPrescriptionIdentifier(Identifier value) {
this.prescriptionIdentifier = value;
}
/**
* Gets the value of the prescriptionReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getPrescriptionReference() {
return prescriptionReference;
}
/**
* Sets the value of the prescriptionReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setPrescriptionReference(Reference value) {
this.prescriptionReference = value;
}
/**
* Gets the value of the originalPrescriptionIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getOriginalPrescriptionIdentifier() {
return originalPrescriptionIdentifier;
}
/**
* Sets the value of the originalPrescriptionIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setOriginalPrescriptionIdentifier(Identifier value) {
this.originalPrescriptionIdentifier = value;
}
/**
* Gets the value of the originalPrescriptionReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getOriginalPrescriptionReference() {
return originalPrescriptionReference;
}
/**
* Sets the value of the originalPrescriptionReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setOriginalPrescriptionReference(Reference value) {
this.originalPrescriptionReference = value;
}
/**
* Gets the value of the payee property.
*
* @return
* possible object is
* {@link ExplanationOfBenefitPayee }
*
*/
public ExplanationOfBenefitPayee getPayee() {
return payee;
}
/**
* Sets the value of the payee property.
*
* @param value
* allowed object is
* {@link ExplanationOfBenefitPayee }
*
*/
public void setPayee(ExplanationOfBenefitPayee value) {
this.payee = value;
}
/**
* Gets the value of the referralIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getReferralIdentifier() {
return referralIdentifier;
}
/**
* Sets the value of the referralIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setReferralIdentifier(Identifier value) {
this.referralIdentifier = value;
}
/**
* Gets the value of the referralReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getReferralReference() {
return referralReference;
}
/**
* Sets the value of the referralReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setReferralReference(Reference value) {
this.referralReference = value;
}
/**
* Gets the value of the occurrenceCode property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the occurrenceCode property.
*
*
* For example, to add a new item, do as follows:
*
* getOccurrenceCode().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getOccurrenceCode() {
if (occurrenceCode == null) {
occurrenceCode = new ArrayList();
}
return this.occurrenceCode;
}
/**
* Gets the value of the occurenceSpanCode property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the occurenceSpanCode property.
*
*
* For example, to add a new item, do as follows:
*
* getOccurenceSpanCode().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getOccurenceSpanCode() {
if (occurenceSpanCode == null) {
occurenceSpanCode = new ArrayList();
}
return this.occurenceSpanCode;
}
/**
* Gets the value of the valueCode property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the valueCode property.
*
*
* For example, to add a new item, do as follows:
*
* getValueCode().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getValueCode() {
if (valueCode == null) {
valueCode = new ArrayList();
}
return this.valueCode;
}
/**
* Gets the value of the diagnosis property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the diagnosis property.
*
*
* For example, to add a new item, do as follows:
*
* getDiagnosis().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitDiagnosis }
*
*
*/
public List getDiagnosis() {
if (diagnosis == null) {
diagnosis = new ArrayList();
}
return this.diagnosis;
}
/**
* Gets the value of the procedure property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the procedure property.
*
*
* For example, to add a new item, do as follows:
*
* getProcedure().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitProcedure }
*
*
*/
public List getProcedure() {
if (procedure == null) {
procedure = new ArrayList();
}
return this.procedure;
}
/**
* Gets the value of the specialCondition property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the specialCondition property.
*
*
* For example, to add a new item, do as follows:
*
* getSpecialCondition().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getSpecialCondition() {
if (specialCondition == null) {
specialCondition = new ArrayList();
}
return this.specialCondition;
}
/**
* Gets the value of the patientIdentifier property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getPatientIdentifier() {
return patientIdentifier;
}
/**
* Sets the value of the patientIdentifier property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setPatientIdentifier(Identifier value) {
this.patientIdentifier = value;
}
/**
* Gets the value of the patientReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getPatientReference() {
return patientReference;
}
/**
* Sets the value of the patientReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setPatientReference(Reference value) {
this.patientReference = value;
}
/**
* Gets the value of the precedence property.
*
* @return
* possible object is
* {@link PositiveInt }
*
*/
public PositiveInt getPrecedence() {
return precedence;
}
/**
* Sets the value of the precedence property.
*
* @param value
* allowed object is
* {@link PositiveInt }
*
*/
public void setPrecedence(PositiveInt value) {
this.precedence = value;
}
/**
* Gets the value of the coverage property.
*
* @return
* possible object is
* {@link ExplanationOfBenefitCoverage }
*
*/
public ExplanationOfBenefitCoverage getCoverage() {
return coverage;
}
/**
* Sets the value of the coverage property.
*
* @param value
* allowed object is
* {@link ExplanationOfBenefitCoverage }
*
*/
public void setCoverage(ExplanationOfBenefitCoverage value) {
this.coverage = value;
}
/**
* Gets the value of the accidentDate property.
*
* @return
* possible object is
* {@link Date }
*
*/
public Date getAccidentDate() {
return accidentDate;
}
/**
* Sets the value of the accidentDate property.
*
* @param value
* allowed object is
* {@link Date }
*
*/
public void setAccidentDate(Date value) {
this.accidentDate = value;
}
/**
* Gets the value of the accidentType property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getAccidentType() {
return accidentType;
}
/**
* Sets the value of the accidentType property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setAccidentType(Coding value) {
this.accidentType = value;
}
/**
* Gets the value of the accidentLocationAddress property.
*
* @return
* possible object is
* {@link Address }
*
*/
public Address getAccidentLocationAddress() {
return accidentLocationAddress;
}
/**
* Sets the value of the accidentLocationAddress property.
*
* @param value
* allowed object is
* {@link Address }
*
*/
public void setAccidentLocationAddress(Address value) {
this.accidentLocationAddress = value;
}
/**
* Gets the value of the accidentLocationReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getAccidentLocationReference() {
return accidentLocationReference;
}
/**
* Sets the value of the accidentLocationReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setAccidentLocationReference(Reference value) {
this.accidentLocationReference = value;
}
/**
* Gets the value of the interventionException property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the interventionException property.
*
*
* For example, to add a new item, do as follows:
*
* getInterventionException().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Coding }
*
*
*/
public List getInterventionException() {
if (interventionException == null) {
interventionException = new ArrayList();
}
return this.interventionException;
}
/**
* Gets the value of the onset property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the onset property.
*
*
* For example, to add a new item, do as follows:
*
* getOnset().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitOnset }
*
*
*/
public List getOnset() {
if (onset == null) {
onset = new ArrayList();
}
return this.onset;
}
/**
* Gets the value of the employmentImpacted property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getEmploymentImpacted() {
return employmentImpacted;
}
/**
* Sets the value of the employmentImpacted property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setEmploymentImpacted(Period value) {
this.employmentImpacted = value;
}
/**
* Gets the value of the hospitalization property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getHospitalization() {
return hospitalization;
}
/**
* Sets the value of the hospitalization property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setHospitalization(Period value) {
this.hospitalization = value;
}
/**
* Gets the value of the item property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the item property.
*
*
* For example, to add a new item, do as follows:
*
* getItem().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitItem }
*
*
*/
public List getItem() {
if (item == null) {
item = new ArrayList();
}
return this.item;
}
/**
* Gets the value of the addItem property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the addItem property.
*
*
* For example, to add a new item, do as follows:
*
* getAddItem().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitAddItem }
*
*
*/
public List getAddItem() {
if (addItem == null) {
addItem = new ArrayList();
}
return this.addItem;
}
/**
* Gets the value of the missingTeeth property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the missingTeeth property.
*
*
* For example, to add a new item, do as follows:
*
* getMissingTeeth().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitMissingTeeth }
*
*
*/
public List getMissingTeeth() {
if (missingTeeth == null) {
missingTeeth = new ArrayList();
}
return this.missingTeeth;
}
/**
* Gets the value of the totalCost property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getTotalCost() {
return totalCost;
}
/**
* Sets the value of the totalCost property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setTotalCost(Money value) {
this.totalCost = value;
}
/**
* Gets the value of the unallocDeductable property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getUnallocDeductable() {
return unallocDeductable;
}
/**
* Sets the value of the unallocDeductable property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setUnallocDeductable(Money value) {
this.unallocDeductable = value;
}
/**
* Gets the value of the totalBenefit property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getTotalBenefit() {
return totalBenefit;
}
/**
* Sets the value of the totalBenefit property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setTotalBenefit(Money value) {
this.totalBenefit = value;
}
/**
* Gets the value of the paymentAdjustment property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getPaymentAdjustment() {
return paymentAdjustment;
}
/**
* Sets the value of the paymentAdjustment property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setPaymentAdjustment(Money value) {
this.paymentAdjustment = value;
}
/**
* Gets the value of the paymentAdjustmentReason property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getPaymentAdjustmentReason() {
return paymentAdjustmentReason;
}
/**
* Sets the value of the paymentAdjustmentReason property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setPaymentAdjustmentReason(Coding value) {
this.paymentAdjustmentReason = value;
}
/**
* Gets the value of the paymentDate property.
*
* @return
* possible object is
* {@link Date }
*
*/
public Date getPaymentDate() {
return paymentDate;
}
/**
* Sets the value of the paymentDate property.
*
* @param value
* allowed object is
* {@link Date }
*
*/
public void setPaymentDate(Date value) {
this.paymentDate = value;
}
/**
* Gets the value of the paymentAmount property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getPaymentAmount() {
return paymentAmount;
}
/**
* Sets the value of the paymentAmount property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setPaymentAmount(Money value) {
this.paymentAmount = value;
}
/**
* Gets the value of the paymentRef property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getPaymentRef() {
return paymentRef;
}
/**
* Sets the value of the paymentRef property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setPaymentRef(Identifier value) {
this.paymentRef = value;
}
/**
* Gets the value of the reserved property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getReserved() {
return reserved;
}
/**
* Sets the value of the reserved property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setReserved(Coding value) {
this.reserved = value;
}
/**
* Gets the value of the form property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getForm() {
return form;
}
/**
* Sets the value of the form property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setForm(Coding value) {
this.form = value;
}
/**
* Gets the value of the note property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the note property.
*
*
* For example, to add a new item, do as follows:
*
* getNote().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitNote }
*
*
*/
public List getNote() {
if (note == null) {
note = new ArrayList();
}
return this.note;
}
/**
* Gets the value of the benefitBalance property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the benefitBalance property.
*
*
* For example, to add a new item, do as follows:
*
* getBenefitBalance().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ExplanationOfBenefitBenefitBalance }
*
*
*/
public List getBenefitBalance() {
if (benefitBalance == null) {
benefitBalance = new ArrayList();
}
return this.benefitBalance;
}
public ExplanationOfBenefit withIdentifier(Identifier... values) {
if (values!= null) {
for (Identifier value: values) {
getIdentifier().add(value);
}
}
return this;
}
public ExplanationOfBenefit withIdentifier(Collection values) {
if (values!= null) {
getIdentifier().addAll(values);
}
return this;
}
public ExplanationOfBenefit withClaimIdentifier(Identifier value) {
setClaimIdentifier(value);
return this;
}
public ExplanationOfBenefit withClaimReference(Reference value) {
setClaimReference(value);
return this;
}
public ExplanationOfBenefit withClaimResponseIdentifier(Identifier value) {
setClaimResponseIdentifier(value);
return this;
}
public ExplanationOfBenefit withClaimResponseReference(Reference value) {
setClaimResponseReference(value);
return this;
}
public ExplanationOfBenefit withSubType(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getSubType().add(value);
}
}
return this;
}
public ExplanationOfBenefit withSubType(Collection values) {
if (values!= null) {
getSubType().addAll(values);
}
return this;
}
public ExplanationOfBenefit withRuleset(Coding value) {
setRuleset(value);
return this;
}
public ExplanationOfBenefit withOriginalRuleset(Coding value) {
setOriginalRuleset(value);
return this;
}
public ExplanationOfBenefit withCreated(DateTime value) {
setCreated(value);
return this;
}
public ExplanationOfBenefit withBillablePeriod(Period value) {
setBillablePeriod(value);
return this;
}
public ExplanationOfBenefit withDisposition(org.hl7.fhir.String value) {
setDisposition(value);
return this;
}
public ExplanationOfBenefit withProviderIdentifier(Identifier value) {
setProviderIdentifier(value);
return this;
}
public ExplanationOfBenefit withProviderReference(Reference value) {
setProviderReference(value);
return this;
}
public ExplanationOfBenefit withOrganizationIdentifier(Identifier value) {
setOrganizationIdentifier(value);
return this;
}
public ExplanationOfBenefit withOrganizationReference(Reference value) {
setOrganizationReference(value);
return this;
}
public ExplanationOfBenefit withFacilityIdentifier(Identifier value) {
setFacilityIdentifier(value);
return this;
}
public ExplanationOfBenefit withFacilityReference(Reference value) {
setFacilityReference(value);
return this;
}
public ExplanationOfBenefit withRelated(ExplanationOfBenefitRelated... values) {
if (values!= null) {
for (ExplanationOfBenefitRelated value: values) {
getRelated().add(value);
}
}
return this;
}
public ExplanationOfBenefit withRelated(Collection values) {
if (values!= null) {
getRelated().addAll(values);
}
return this;
}
public ExplanationOfBenefit withPrescriptionIdentifier(Identifier value) {
setPrescriptionIdentifier(value);
return this;
}
public ExplanationOfBenefit withPrescriptionReference(Reference value) {
setPrescriptionReference(value);
return this;
}
public ExplanationOfBenefit withOriginalPrescriptionIdentifier(Identifier value) {
setOriginalPrescriptionIdentifier(value);
return this;
}
public ExplanationOfBenefit withOriginalPrescriptionReference(Reference value) {
setOriginalPrescriptionReference(value);
return this;
}
public ExplanationOfBenefit withPayee(ExplanationOfBenefitPayee value) {
setPayee(value);
return this;
}
public ExplanationOfBenefit withReferralIdentifier(Identifier value) {
setReferralIdentifier(value);
return this;
}
public ExplanationOfBenefit withReferralReference(Reference value) {
setReferralReference(value);
return this;
}
public ExplanationOfBenefit withOccurrenceCode(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getOccurrenceCode().add(value);
}
}
return this;
}
public ExplanationOfBenefit withOccurrenceCode(Collection values) {
if (values!= null) {
getOccurrenceCode().addAll(values);
}
return this;
}
public ExplanationOfBenefit withOccurenceSpanCode(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getOccurenceSpanCode().add(value);
}
}
return this;
}
public ExplanationOfBenefit withOccurenceSpanCode(Collection values) {
if (values!= null) {
getOccurenceSpanCode().addAll(values);
}
return this;
}
public ExplanationOfBenefit withValueCode(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getValueCode().add(value);
}
}
return this;
}
public ExplanationOfBenefit withValueCode(Collection values) {
if (values!= null) {
getValueCode().addAll(values);
}
return this;
}
public ExplanationOfBenefit withDiagnosis(ExplanationOfBenefitDiagnosis... values) {
if (values!= null) {
for (ExplanationOfBenefitDiagnosis value: values) {
getDiagnosis().add(value);
}
}
return this;
}
public ExplanationOfBenefit withDiagnosis(Collection values) {
if (values!= null) {
getDiagnosis().addAll(values);
}
return this;
}
public ExplanationOfBenefit withProcedure(ExplanationOfBenefitProcedure... values) {
if (values!= null) {
for (ExplanationOfBenefitProcedure value: values) {
getProcedure().add(value);
}
}
return this;
}
public ExplanationOfBenefit withProcedure(Collection values) {
if (values!= null) {
getProcedure().addAll(values);
}
return this;
}
public ExplanationOfBenefit withSpecialCondition(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getSpecialCondition().add(value);
}
}
return this;
}
public ExplanationOfBenefit withSpecialCondition(Collection values) {
if (values!= null) {
getSpecialCondition().addAll(values);
}
return this;
}
public ExplanationOfBenefit withPatientIdentifier(Identifier value) {
setPatientIdentifier(value);
return this;
}
public ExplanationOfBenefit withPatientReference(Reference value) {
setPatientReference(value);
return this;
}
public ExplanationOfBenefit withPrecedence(PositiveInt value) {
setPrecedence(value);
return this;
}
public ExplanationOfBenefit withCoverage(ExplanationOfBenefitCoverage value) {
setCoverage(value);
return this;
}
public ExplanationOfBenefit withAccidentDate(Date value) {
setAccidentDate(value);
return this;
}
public ExplanationOfBenefit withAccidentType(Coding value) {
setAccidentType(value);
return this;
}
public ExplanationOfBenefit withAccidentLocationAddress(Address value) {
setAccidentLocationAddress(value);
return this;
}
public ExplanationOfBenefit withAccidentLocationReference(Reference value) {
setAccidentLocationReference(value);
return this;
}
public ExplanationOfBenefit withInterventionException(Coding... values) {
if (values!= null) {
for (Coding value: values) {
getInterventionException().add(value);
}
}
return this;
}
public ExplanationOfBenefit withInterventionException(Collection values) {
if (values!= null) {
getInterventionException().addAll(values);
}
return this;
}
public ExplanationOfBenefit withOnset(ExplanationOfBenefitOnset... values) {
if (values!= null) {
for (ExplanationOfBenefitOnset value: values) {
getOnset().add(value);
}
}
return this;
}
public ExplanationOfBenefit withOnset(Collection values) {
if (values!= null) {
getOnset().addAll(values);
}
return this;
}
public ExplanationOfBenefit withEmploymentImpacted(Period value) {
setEmploymentImpacted(value);
return this;
}
public ExplanationOfBenefit withHospitalization(Period value) {
setHospitalization(value);
return this;
}
public ExplanationOfBenefit withItem(ExplanationOfBenefitItem... values) {
if (values!= null) {
for (ExplanationOfBenefitItem value: values) {
getItem().add(value);
}
}
return this;
}
public ExplanationOfBenefit withItem(Collection values) {
if (values!= null) {
getItem().addAll(values);
}
return this;
}
public ExplanationOfBenefit withAddItem(ExplanationOfBenefitAddItem... values) {
if (values!= null) {
for (ExplanationOfBenefitAddItem value: values) {
getAddItem().add(value);
}
}
return this;
}
public ExplanationOfBenefit withAddItem(Collection values) {
if (values!= null) {
getAddItem().addAll(values);
}
return this;
}
public ExplanationOfBenefit withMissingTeeth(ExplanationOfBenefitMissingTeeth... values) {
if (values!= null) {
for (ExplanationOfBenefitMissingTeeth value: values) {
getMissingTeeth().add(value);
}
}
return this;
}
public ExplanationOfBenefit withMissingTeeth(Collection values) {
if (values!= null) {
getMissingTeeth().addAll(values);
}
return this;
}
public ExplanationOfBenefit withTotalCost(Money value) {
setTotalCost(value);
return this;
}
public ExplanationOfBenefit withUnallocDeductable(Money value) {
setUnallocDeductable(value);
return this;
}
public ExplanationOfBenefit withTotalBenefit(Money value) {
setTotalBenefit(value);
return this;
}
public ExplanationOfBenefit withPaymentAdjustment(Money value) {
setPaymentAdjustment(value);
return this;
}
public ExplanationOfBenefit withPaymentAdjustmentReason(Coding value) {
setPaymentAdjustmentReason(value);
return this;
}
public ExplanationOfBenefit withPaymentDate(Date value) {
setPaymentDate(value);
return this;
}
public ExplanationOfBenefit withPaymentAmount(Money value) {
setPaymentAmount(value);
return this;
}
public ExplanationOfBenefit withPaymentRef(Identifier value) {
setPaymentRef(value);
return this;
}
public ExplanationOfBenefit withReserved(Coding value) {
setReserved(value);
return this;
}
public ExplanationOfBenefit withForm(Coding value) {
setForm(value);
return this;
}
public ExplanationOfBenefit withNote(ExplanationOfBenefitNote... values) {
if (values!= null) {
for (ExplanationOfBenefitNote value: values) {
getNote().add(value);
}
}
return this;
}
public ExplanationOfBenefit withNote(Collection values) {
if (values!= null) {
getNote().addAll(values);
}
return this;
}
public ExplanationOfBenefit withBenefitBalance(ExplanationOfBenefitBenefitBalance... values) {
if (values!= null) {
for (ExplanationOfBenefitBenefitBalance value: values) {
getBenefitBalance().add(value);
}
}
return this;
}
public ExplanationOfBenefit withBenefitBalance(Collection values) {
if (values!= null) {
getBenefitBalance().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefit withText(Narrative value) {
setText(value);
return this;
}
@Override
public ExplanationOfBenefit withContained(ResourceContainer... values) {
if (values!= null) {
for (ResourceContainer value: values) {
getContained().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefit withContained(Collection values) {
if (values!= null) {
getContained().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefit withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefit withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefit withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefit withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefit withId(Id value) {
setId(value);
return this;
}
@Override
public ExplanationOfBenefit withMeta(Meta value) {
setMeta(value);
return this;
}
@Override
public ExplanationOfBenefit withImplicitRules(Uri value) {
setImplicitRules(value);
return this;
}
@Override
public ExplanationOfBenefit withLanguage(Code value) {
setLanguage(value);
return this;
}
@Override
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy2 strategy) {
if ((object == null)||(this.getClass()!= object.getClass())) {
return false;
}
if (this == object) {
return true;
}
if (!super.equals(thisLocator, thatLocator, object, strategy)) {
return false;
}
final ExplanationOfBenefit that = ((ExplanationOfBenefit) object);
{
List lhsIdentifier;
lhsIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
List rhsIdentifier;
rhsIdentifier = (((that.identifier!= null)&&(!that.identifier.isEmpty()))?that.getIdentifier():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "identifier", lhsIdentifier), LocatorUtils.property(thatLocator, "identifier", rhsIdentifier), lhsIdentifier, rhsIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())), ((that.identifier!= null)&&(!that.identifier.isEmpty())))) {
return false;
}
}
{
Identifier lhsClaimIdentifier;
lhsClaimIdentifier = this.getClaimIdentifier();
Identifier rhsClaimIdentifier;
rhsClaimIdentifier = that.getClaimIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "claimIdentifier", lhsClaimIdentifier), LocatorUtils.property(thatLocator, "claimIdentifier", rhsClaimIdentifier), lhsClaimIdentifier, rhsClaimIdentifier, (this.claimIdentifier!= null), (that.claimIdentifier!= null))) {
return false;
}
}
{
Reference lhsClaimReference;
lhsClaimReference = this.getClaimReference();
Reference rhsClaimReference;
rhsClaimReference = that.getClaimReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "claimReference", lhsClaimReference), LocatorUtils.property(thatLocator, "claimReference", rhsClaimReference), lhsClaimReference, rhsClaimReference, (this.claimReference!= null), (that.claimReference!= null))) {
return false;
}
}
{
Identifier lhsClaimResponseIdentifier;
lhsClaimResponseIdentifier = this.getClaimResponseIdentifier();
Identifier rhsClaimResponseIdentifier;
rhsClaimResponseIdentifier = that.getClaimResponseIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "claimResponseIdentifier", lhsClaimResponseIdentifier), LocatorUtils.property(thatLocator, "claimResponseIdentifier", rhsClaimResponseIdentifier), lhsClaimResponseIdentifier, rhsClaimResponseIdentifier, (this.claimResponseIdentifier!= null), (that.claimResponseIdentifier!= null))) {
return false;
}
}
{
Reference lhsClaimResponseReference;
lhsClaimResponseReference = this.getClaimResponseReference();
Reference rhsClaimResponseReference;
rhsClaimResponseReference = that.getClaimResponseReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "claimResponseReference", lhsClaimResponseReference), LocatorUtils.property(thatLocator, "claimResponseReference", rhsClaimResponseReference), lhsClaimResponseReference, rhsClaimResponseReference, (this.claimResponseReference!= null), (that.claimResponseReference!= null))) {
return false;
}
}
{
List lhsSubType;
lhsSubType = (((this.subType!= null)&&(!this.subType.isEmpty()))?this.getSubType():null);
List rhsSubType;
rhsSubType = (((that.subType!= null)&&(!that.subType.isEmpty()))?that.getSubType():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "subType", lhsSubType), LocatorUtils.property(thatLocator, "subType", rhsSubType), lhsSubType, rhsSubType, ((this.subType!= null)&&(!this.subType.isEmpty())), ((that.subType!= null)&&(!that.subType.isEmpty())))) {
return false;
}
}
{
Coding lhsRuleset;
lhsRuleset = this.getRuleset();
Coding rhsRuleset;
rhsRuleset = that.getRuleset();
if (!strategy.equals(LocatorUtils.property(thisLocator, "ruleset", lhsRuleset), LocatorUtils.property(thatLocator, "ruleset", rhsRuleset), lhsRuleset, rhsRuleset, (this.ruleset!= null), (that.ruleset!= null))) {
return false;
}
}
{
Coding lhsOriginalRuleset;
lhsOriginalRuleset = this.getOriginalRuleset();
Coding rhsOriginalRuleset;
rhsOriginalRuleset = that.getOriginalRuleset();
if (!strategy.equals(LocatorUtils.property(thisLocator, "originalRuleset", lhsOriginalRuleset), LocatorUtils.property(thatLocator, "originalRuleset", rhsOriginalRuleset), lhsOriginalRuleset, rhsOriginalRuleset, (this.originalRuleset!= null), (that.originalRuleset!= null))) {
return false;
}
}
{
DateTime lhsCreated;
lhsCreated = this.getCreated();
DateTime rhsCreated;
rhsCreated = that.getCreated();
if (!strategy.equals(LocatorUtils.property(thisLocator, "created", lhsCreated), LocatorUtils.property(thatLocator, "created", rhsCreated), lhsCreated, rhsCreated, (this.created!= null), (that.created!= null))) {
return false;
}
}
{
Period lhsBillablePeriod;
lhsBillablePeriod = this.getBillablePeriod();
Period rhsBillablePeriod;
rhsBillablePeriod = that.getBillablePeriod();
if (!strategy.equals(LocatorUtils.property(thisLocator, "billablePeriod", lhsBillablePeriod), LocatorUtils.property(thatLocator, "billablePeriod", rhsBillablePeriod), lhsBillablePeriod, rhsBillablePeriod, (this.billablePeriod!= null), (that.billablePeriod!= null))) {
return false;
}
}
{
org.hl7.fhir.String lhsDisposition;
lhsDisposition = this.getDisposition();
org.hl7.fhir.String rhsDisposition;
rhsDisposition = that.getDisposition();
if (!strategy.equals(LocatorUtils.property(thisLocator, "disposition", lhsDisposition), LocatorUtils.property(thatLocator, "disposition", rhsDisposition), lhsDisposition, rhsDisposition, (this.disposition!= null), (that.disposition!= null))) {
return false;
}
}
{
Identifier lhsProviderIdentifier;
lhsProviderIdentifier = this.getProviderIdentifier();
Identifier rhsProviderIdentifier;
rhsProviderIdentifier = that.getProviderIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "providerIdentifier", lhsProviderIdentifier), LocatorUtils.property(thatLocator, "providerIdentifier", rhsProviderIdentifier), lhsProviderIdentifier, rhsProviderIdentifier, (this.providerIdentifier!= null), (that.providerIdentifier!= null))) {
return false;
}
}
{
Reference lhsProviderReference;
lhsProviderReference = this.getProviderReference();
Reference rhsProviderReference;
rhsProviderReference = that.getProviderReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "providerReference", lhsProviderReference), LocatorUtils.property(thatLocator, "providerReference", rhsProviderReference), lhsProviderReference, rhsProviderReference, (this.providerReference!= null), (that.providerReference!= null))) {
return false;
}
}
{
Identifier lhsOrganizationIdentifier;
lhsOrganizationIdentifier = this.getOrganizationIdentifier();
Identifier rhsOrganizationIdentifier;
rhsOrganizationIdentifier = that.getOrganizationIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "organizationIdentifier", lhsOrganizationIdentifier), LocatorUtils.property(thatLocator, "organizationIdentifier", rhsOrganizationIdentifier), lhsOrganizationIdentifier, rhsOrganizationIdentifier, (this.organizationIdentifier!= null), (that.organizationIdentifier!= null))) {
return false;
}
}
{
Reference lhsOrganizationReference;
lhsOrganizationReference = this.getOrganizationReference();
Reference rhsOrganizationReference;
rhsOrganizationReference = that.getOrganizationReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "organizationReference", lhsOrganizationReference), LocatorUtils.property(thatLocator, "organizationReference", rhsOrganizationReference), lhsOrganizationReference, rhsOrganizationReference, (this.organizationReference!= null), (that.organizationReference!= null))) {
return false;
}
}
{
Identifier lhsFacilityIdentifier;
lhsFacilityIdentifier = this.getFacilityIdentifier();
Identifier rhsFacilityIdentifier;
rhsFacilityIdentifier = that.getFacilityIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "facilityIdentifier", lhsFacilityIdentifier), LocatorUtils.property(thatLocator, "facilityIdentifier", rhsFacilityIdentifier), lhsFacilityIdentifier, rhsFacilityIdentifier, (this.facilityIdentifier!= null), (that.facilityIdentifier!= null))) {
return false;
}
}
{
Reference lhsFacilityReference;
lhsFacilityReference = this.getFacilityReference();
Reference rhsFacilityReference;
rhsFacilityReference = that.getFacilityReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "facilityReference", lhsFacilityReference), LocatorUtils.property(thatLocator, "facilityReference", rhsFacilityReference), lhsFacilityReference, rhsFacilityReference, (this.facilityReference!= null), (that.facilityReference!= null))) {
return false;
}
}
{
List lhsRelated;
lhsRelated = (((this.related!= null)&&(!this.related.isEmpty()))?this.getRelated():null);
List rhsRelated;
rhsRelated = (((that.related!= null)&&(!that.related.isEmpty()))?that.getRelated():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "related", lhsRelated), LocatorUtils.property(thatLocator, "related", rhsRelated), lhsRelated, rhsRelated, ((this.related!= null)&&(!this.related.isEmpty())), ((that.related!= null)&&(!that.related.isEmpty())))) {
return false;
}
}
{
Identifier lhsPrescriptionIdentifier;
lhsPrescriptionIdentifier = this.getPrescriptionIdentifier();
Identifier rhsPrescriptionIdentifier;
rhsPrescriptionIdentifier = that.getPrescriptionIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "prescriptionIdentifier", lhsPrescriptionIdentifier), LocatorUtils.property(thatLocator, "prescriptionIdentifier", rhsPrescriptionIdentifier), lhsPrescriptionIdentifier, rhsPrescriptionIdentifier, (this.prescriptionIdentifier!= null), (that.prescriptionIdentifier!= null))) {
return false;
}
}
{
Reference lhsPrescriptionReference;
lhsPrescriptionReference = this.getPrescriptionReference();
Reference rhsPrescriptionReference;
rhsPrescriptionReference = that.getPrescriptionReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "prescriptionReference", lhsPrescriptionReference), LocatorUtils.property(thatLocator, "prescriptionReference", rhsPrescriptionReference), lhsPrescriptionReference, rhsPrescriptionReference, (this.prescriptionReference!= null), (that.prescriptionReference!= null))) {
return false;
}
}
{
Identifier lhsOriginalPrescriptionIdentifier;
lhsOriginalPrescriptionIdentifier = this.getOriginalPrescriptionIdentifier();
Identifier rhsOriginalPrescriptionIdentifier;
rhsOriginalPrescriptionIdentifier = that.getOriginalPrescriptionIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "originalPrescriptionIdentifier", lhsOriginalPrescriptionIdentifier), LocatorUtils.property(thatLocator, "originalPrescriptionIdentifier", rhsOriginalPrescriptionIdentifier), lhsOriginalPrescriptionIdentifier, rhsOriginalPrescriptionIdentifier, (this.originalPrescriptionIdentifier!= null), (that.originalPrescriptionIdentifier!= null))) {
return false;
}
}
{
Reference lhsOriginalPrescriptionReference;
lhsOriginalPrescriptionReference = this.getOriginalPrescriptionReference();
Reference rhsOriginalPrescriptionReference;
rhsOriginalPrescriptionReference = that.getOriginalPrescriptionReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "originalPrescriptionReference", lhsOriginalPrescriptionReference), LocatorUtils.property(thatLocator, "originalPrescriptionReference", rhsOriginalPrescriptionReference), lhsOriginalPrescriptionReference, rhsOriginalPrescriptionReference, (this.originalPrescriptionReference!= null), (that.originalPrescriptionReference!= null))) {
return false;
}
}
{
ExplanationOfBenefitPayee lhsPayee;
lhsPayee = this.getPayee();
ExplanationOfBenefitPayee rhsPayee;
rhsPayee = that.getPayee();
if (!strategy.equals(LocatorUtils.property(thisLocator, "payee", lhsPayee), LocatorUtils.property(thatLocator, "payee", rhsPayee), lhsPayee, rhsPayee, (this.payee!= null), (that.payee!= null))) {
return false;
}
}
{
Identifier lhsReferralIdentifier;
lhsReferralIdentifier = this.getReferralIdentifier();
Identifier rhsReferralIdentifier;
rhsReferralIdentifier = that.getReferralIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "referralIdentifier", lhsReferralIdentifier), LocatorUtils.property(thatLocator, "referralIdentifier", rhsReferralIdentifier), lhsReferralIdentifier, rhsReferralIdentifier, (this.referralIdentifier!= null), (that.referralIdentifier!= null))) {
return false;
}
}
{
Reference lhsReferralReference;
lhsReferralReference = this.getReferralReference();
Reference rhsReferralReference;
rhsReferralReference = that.getReferralReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "referralReference", lhsReferralReference), LocatorUtils.property(thatLocator, "referralReference", rhsReferralReference), lhsReferralReference, rhsReferralReference, (this.referralReference!= null), (that.referralReference!= null))) {
return false;
}
}
{
List lhsOccurrenceCode;
lhsOccurrenceCode = (((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty()))?this.getOccurrenceCode():null);
List rhsOccurrenceCode;
rhsOccurrenceCode = (((that.occurrenceCode!= null)&&(!that.occurrenceCode.isEmpty()))?that.getOccurrenceCode():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "occurrenceCode", lhsOccurrenceCode), LocatorUtils.property(thatLocator, "occurrenceCode", rhsOccurrenceCode), lhsOccurrenceCode, rhsOccurrenceCode, ((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty())), ((that.occurrenceCode!= null)&&(!that.occurrenceCode.isEmpty())))) {
return false;
}
}
{
List lhsOccurenceSpanCode;
lhsOccurenceSpanCode = (((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty()))?this.getOccurenceSpanCode():null);
List rhsOccurenceSpanCode;
rhsOccurenceSpanCode = (((that.occurenceSpanCode!= null)&&(!that.occurenceSpanCode.isEmpty()))?that.getOccurenceSpanCode():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "occurenceSpanCode", lhsOccurenceSpanCode), LocatorUtils.property(thatLocator, "occurenceSpanCode", rhsOccurenceSpanCode), lhsOccurenceSpanCode, rhsOccurenceSpanCode, ((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty())), ((that.occurenceSpanCode!= null)&&(!that.occurenceSpanCode.isEmpty())))) {
return false;
}
}
{
List lhsValueCode;
lhsValueCode = (((this.valueCode!= null)&&(!this.valueCode.isEmpty()))?this.getValueCode():null);
List rhsValueCode;
rhsValueCode = (((that.valueCode!= null)&&(!that.valueCode.isEmpty()))?that.getValueCode():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueCode", lhsValueCode), LocatorUtils.property(thatLocator, "valueCode", rhsValueCode), lhsValueCode, rhsValueCode, ((this.valueCode!= null)&&(!this.valueCode.isEmpty())), ((that.valueCode!= null)&&(!that.valueCode.isEmpty())))) {
return false;
}
}
{
List lhsDiagnosis;
lhsDiagnosis = (((this.diagnosis!= null)&&(!this.diagnosis.isEmpty()))?this.getDiagnosis():null);
List rhsDiagnosis;
rhsDiagnosis = (((that.diagnosis!= null)&&(!that.diagnosis.isEmpty()))?that.getDiagnosis():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "diagnosis", lhsDiagnosis), LocatorUtils.property(thatLocator, "diagnosis", rhsDiagnosis), lhsDiagnosis, rhsDiagnosis, ((this.diagnosis!= null)&&(!this.diagnosis.isEmpty())), ((that.diagnosis!= null)&&(!that.diagnosis.isEmpty())))) {
return false;
}
}
{
List lhsProcedure;
lhsProcedure = (((this.procedure!= null)&&(!this.procedure.isEmpty()))?this.getProcedure():null);
List rhsProcedure;
rhsProcedure = (((that.procedure!= null)&&(!that.procedure.isEmpty()))?that.getProcedure():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "procedure", lhsProcedure), LocatorUtils.property(thatLocator, "procedure", rhsProcedure), lhsProcedure, rhsProcedure, ((this.procedure!= null)&&(!this.procedure.isEmpty())), ((that.procedure!= null)&&(!that.procedure.isEmpty())))) {
return false;
}
}
{
List lhsSpecialCondition;
lhsSpecialCondition = (((this.specialCondition!= null)&&(!this.specialCondition.isEmpty()))?this.getSpecialCondition():null);
List rhsSpecialCondition;
rhsSpecialCondition = (((that.specialCondition!= null)&&(!that.specialCondition.isEmpty()))?that.getSpecialCondition():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "specialCondition", lhsSpecialCondition), LocatorUtils.property(thatLocator, "specialCondition", rhsSpecialCondition), lhsSpecialCondition, rhsSpecialCondition, ((this.specialCondition!= null)&&(!this.specialCondition.isEmpty())), ((that.specialCondition!= null)&&(!that.specialCondition.isEmpty())))) {
return false;
}
}
{
Identifier lhsPatientIdentifier;
lhsPatientIdentifier = this.getPatientIdentifier();
Identifier rhsPatientIdentifier;
rhsPatientIdentifier = that.getPatientIdentifier();
if (!strategy.equals(LocatorUtils.property(thisLocator, "patientIdentifier", lhsPatientIdentifier), LocatorUtils.property(thatLocator, "patientIdentifier", rhsPatientIdentifier), lhsPatientIdentifier, rhsPatientIdentifier, (this.patientIdentifier!= null), (that.patientIdentifier!= null))) {
return false;
}
}
{
Reference lhsPatientReference;
lhsPatientReference = this.getPatientReference();
Reference rhsPatientReference;
rhsPatientReference = that.getPatientReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "patientReference", lhsPatientReference), LocatorUtils.property(thatLocator, "patientReference", rhsPatientReference), lhsPatientReference, rhsPatientReference, (this.patientReference!= null), (that.patientReference!= null))) {
return false;
}
}
{
PositiveInt lhsPrecedence;
lhsPrecedence = this.getPrecedence();
PositiveInt rhsPrecedence;
rhsPrecedence = that.getPrecedence();
if (!strategy.equals(LocatorUtils.property(thisLocator, "precedence", lhsPrecedence), LocatorUtils.property(thatLocator, "precedence", rhsPrecedence), lhsPrecedence, rhsPrecedence, (this.precedence!= null), (that.precedence!= null))) {
return false;
}
}
{
ExplanationOfBenefitCoverage lhsCoverage;
lhsCoverage = this.getCoverage();
ExplanationOfBenefitCoverage rhsCoverage;
rhsCoverage = that.getCoverage();
if (!strategy.equals(LocatorUtils.property(thisLocator, "coverage", lhsCoverage), LocatorUtils.property(thatLocator, "coverage", rhsCoverage), lhsCoverage, rhsCoverage, (this.coverage!= null), (that.coverage!= null))) {
return false;
}
}
{
Date lhsAccidentDate;
lhsAccidentDate = this.getAccidentDate();
Date rhsAccidentDate;
rhsAccidentDate = that.getAccidentDate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "accidentDate", lhsAccidentDate), LocatorUtils.property(thatLocator, "accidentDate", rhsAccidentDate), lhsAccidentDate, rhsAccidentDate, (this.accidentDate!= null), (that.accidentDate!= null))) {
return false;
}
}
{
Coding lhsAccidentType;
lhsAccidentType = this.getAccidentType();
Coding rhsAccidentType;
rhsAccidentType = that.getAccidentType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "accidentType", lhsAccidentType), LocatorUtils.property(thatLocator, "accidentType", rhsAccidentType), lhsAccidentType, rhsAccidentType, (this.accidentType!= null), (that.accidentType!= null))) {
return false;
}
}
{
Address lhsAccidentLocationAddress;
lhsAccidentLocationAddress = this.getAccidentLocationAddress();
Address rhsAccidentLocationAddress;
rhsAccidentLocationAddress = that.getAccidentLocationAddress();
if (!strategy.equals(LocatorUtils.property(thisLocator, "accidentLocationAddress", lhsAccidentLocationAddress), LocatorUtils.property(thatLocator, "accidentLocationAddress", rhsAccidentLocationAddress), lhsAccidentLocationAddress, rhsAccidentLocationAddress, (this.accidentLocationAddress!= null), (that.accidentLocationAddress!= null))) {
return false;
}
}
{
Reference lhsAccidentLocationReference;
lhsAccidentLocationReference = this.getAccidentLocationReference();
Reference rhsAccidentLocationReference;
rhsAccidentLocationReference = that.getAccidentLocationReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "accidentLocationReference", lhsAccidentLocationReference), LocatorUtils.property(thatLocator, "accidentLocationReference", rhsAccidentLocationReference), lhsAccidentLocationReference, rhsAccidentLocationReference, (this.accidentLocationReference!= null), (that.accidentLocationReference!= null))) {
return false;
}
}
{
List lhsInterventionException;
lhsInterventionException = (((this.interventionException!= null)&&(!this.interventionException.isEmpty()))?this.getInterventionException():null);
List rhsInterventionException;
rhsInterventionException = (((that.interventionException!= null)&&(!that.interventionException.isEmpty()))?that.getInterventionException():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "interventionException", lhsInterventionException), LocatorUtils.property(thatLocator, "interventionException", rhsInterventionException), lhsInterventionException, rhsInterventionException, ((this.interventionException!= null)&&(!this.interventionException.isEmpty())), ((that.interventionException!= null)&&(!that.interventionException.isEmpty())))) {
return false;
}
}
{
List lhsOnset;
lhsOnset = (((this.onset!= null)&&(!this.onset.isEmpty()))?this.getOnset():null);
List rhsOnset;
rhsOnset = (((that.onset!= null)&&(!that.onset.isEmpty()))?that.getOnset():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "onset", lhsOnset), LocatorUtils.property(thatLocator, "onset", rhsOnset), lhsOnset, rhsOnset, ((this.onset!= null)&&(!this.onset.isEmpty())), ((that.onset!= null)&&(!that.onset.isEmpty())))) {
return false;
}
}
{
Period lhsEmploymentImpacted;
lhsEmploymentImpacted = this.getEmploymentImpacted();
Period rhsEmploymentImpacted;
rhsEmploymentImpacted = that.getEmploymentImpacted();
if (!strategy.equals(LocatorUtils.property(thisLocator, "employmentImpacted", lhsEmploymentImpacted), LocatorUtils.property(thatLocator, "employmentImpacted", rhsEmploymentImpacted), lhsEmploymentImpacted, rhsEmploymentImpacted, (this.employmentImpacted!= null), (that.employmentImpacted!= null))) {
return false;
}
}
{
Period lhsHospitalization;
lhsHospitalization = this.getHospitalization();
Period rhsHospitalization;
rhsHospitalization = that.getHospitalization();
if (!strategy.equals(LocatorUtils.property(thisLocator, "hospitalization", lhsHospitalization), LocatorUtils.property(thatLocator, "hospitalization", rhsHospitalization), lhsHospitalization, rhsHospitalization, (this.hospitalization!= null), (that.hospitalization!= null))) {
return false;
}
}
{
List lhsItem;
lhsItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
List rhsItem;
rhsItem = (((that.item!= null)&&(!that.item.isEmpty()))?that.getItem():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "item", lhsItem), LocatorUtils.property(thatLocator, "item", rhsItem), lhsItem, rhsItem, ((this.item!= null)&&(!this.item.isEmpty())), ((that.item!= null)&&(!that.item.isEmpty())))) {
return false;
}
}
{
List lhsAddItem;
lhsAddItem = (((this.addItem!= null)&&(!this.addItem.isEmpty()))?this.getAddItem():null);
List rhsAddItem;
rhsAddItem = (((that.addItem!= null)&&(!that.addItem.isEmpty()))?that.getAddItem():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "addItem", lhsAddItem), LocatorUtils.property(thatLocator, "addItem", rhsAddItem), lhsAddItem, rhsAddItem, ((this.addItem!= null)&&(!this.addItem.isEmpty())), ((that.addItem!= null)&&(!that.addItem.isEmpty())))) {
return false;
}
}
{
List lhsMissingTeeth;
lhsMissingTeeth = (((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty()))?this.getMissingTeeth():null);
List rhsMissingTeeth;
rhsMissingTeeth = (((that.missingTeeth!= null)&&(!that.missingTeeth.isEmpty()))?that.getMissingTeeth():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "missingTeeth", lhsMissingTeeth), LocatorUtils.property(thatLocator, "missingTeeth", rhsMissingTeeth), lhsMissingTeeth, rhsMissingTeeth, ((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty())), ((that.missingTeeth!= null)&&(!that.missingTeeth.isEmpty())))) {
return false;
}
}
{
Money lhsTotalCost;
lhsTotalCost = this.getTotalCost();
Money rhsTotalCost;
rhsTotalCost = that.getTotalCost();
if (!strategy.equals(LocatorUtils.property(thisLocator, "totalCost", lhsTotalCost), LocatorUtils.property(thatLocator, "totalCost", rhsTotalCost), lhsTotalCost, rhsTotalCost, (this.totalCost!= null), (that.totalCost!= null))) {
return false;
}
}
{
Money lhsUnallocDeductable;
lhsUnallocDeductable = this.getUnallocDeductable();
Money rhsUnallocDeductable;
rhsUnallocDeductable = that.getUnallocDeductable();
if (!strategy.equals(LocatorUtils.property(thisLocator, "unallocDeductable", lhsUnallocDeductable), LocatorUtils.property(thatLocator, "unallocDeductable", rhsUnallocDeductable), lhsUnallocDeductable, rhsUnallocDeductable, (this.unallocDeductable!= null), (that.unallocDeductable!= null))) {
return false;
}
}
{
Money lhsTotalBenefit;
lhsTotalBenefit = this.getTotalBenefit();
Money rhsTotalBenefit;
rhsTotalBenefit = that.getTotalBenefit();
if (!strategy.equals(LocatorUtils.property(thisLocator, "totalBenefit", lhsTotalBenefit), LocatorUtils.property(thatLocator, "totalBenefit", rhsTotalBenefit), lhsTotalBenefit, rhsTotalBenefit, (this.totalBenefit!= null), (that.totalBenefit!= null))) {
return false;
}
}
{
Money lhsPaymentAdjustment;
lhsPaymentAdjustment = this.getPaymentAdjustment();
Money rhsPaymentAdjustment;
rhsPaymentAdjustment = that.getPaymentAdjustment();
if (!strategy.equals(LocatorUtils.property(thisLocator, "paymentAdjustment", lhsPaymentAdjustment), LocatorUtils.property(thatLocator, "paymentAdjustment", rhsPaymentAdjustment), lhsPaymentAdjustment, rhsPaymentAdjustment, (this.paymentAdjustment!= null), (that.paymentAdjustment!= null))) {
return false;
}
}
{
Coding lhsPaymentAdjustmentReason;
lhsPaymentAdjustmentReason = this.getPaymentAdjustmentReason();
Coding rhsPaymentAdjustmentReason;
rhsPaymentAdjustmentReason = that.getPaymentAdjustmentReason();
if (!strategy.equals(LocatorUtils.property(thisLocator, "paymentAdjustmentReason", lhsPaymentAdjustmentReason), LocatorUtils.property(thatLocator, "paymentAdjustmentReason", rhsPaymentAdjustmentReason), lhsPaymentAdjustmentReason, rhsPaymentAdjustmentReason, (this.paymentAdjustmentReason!= null), (that.paymentAdjustmentReason!= null))) {
return false;
}
}
{
Date lhsPaymentDate;
lhsPaymentDate = this.getPaymentDate();
Date rhsPaymentDate;
rhsPaymentDate = that.getPaymentDate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "paymentDate", lhsPaymentDate), LocatorUtils.property(thatLocator, "paymentDate", rhsPaymentDate), lhsPaymentDate, rhsPaymentDate, (this.paymentDate!= null), (that.paymentDate!= null))) {
return false;
}
}
{
Money lhsPaymentAmount;
lhsPaymentAmount = this.getPaymentAmount();
Money rhsPaymentAmount;
rhsPaymentAmount = that.getPaymentAmount();
if (!strategy.equals(LocatorUtils.property(thisLocator, "paymentAmount", lhsPaymentAmount), LocatorUtils.property(thatLocator, "paymentAmount", rhsPaymentAmount), lhsPaymentAmount, rhsPaymentAmount, (this.paymentAmount!= null), (that.paymentAmount!= null))) {
return false;
}
}
{
Identifier lhsPaymentRef;
lhsPaymentRef = this.getPaymentRef();
Identifier rhsPaymentRef;
rhsPaymentRef = that.getPaymentRef();
if (!strategy.equals(LocatorUtils.property(thisLocator, "paymentRef", lhsPaymentRef), LocatorUtils.property(thatLocator, "paymentRef", rhsPaymentRef), lhsPaymentRef, rhsPaymentRef, (this.paymentRef!= null), (that.paymentRef!= null))) {
return false;
}
}
{
Coding lhsReserved;
lhsReserved = this.getReserved();
Coding rhsReserved;
rhsReserved = that.getReserved();
if (!strategy.equals(LocatorUtils.property(thisLocator, "reserved", lhsReserved), LocatorUtils.property(thatLocator, "reserved", rhsReserved), lhsReserved, rhsReserved, (this.reserved!= null), (that.reserved!= null))) {
return false;
}
}
{
Coding lhsForm;
lhsForm = this.getForm();
Coding rhsForm;
rhsForm = that.getForm();
if (!strategy.equals(LocatorUtils.property(thisLocator, "form", lhsForm), LocatorUtils.property(thatLocator, "form", rhsForm), lhsForm, rhsForm, (this.form!= null), (that.form!= null))) {
return false;
}
}
{
List lhsNote;
lhsNote = (((this.note!= null)&&(!this.note.isEmpty()))?this.getNote():null);
List rhsNote;
rhsNote = (((that.note!= null)&&(!that.note.isEmpty()))?that.getNote():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "note", lhsNote), LocatorUtils.property(thatLocator, "note", rhsNote), lhsNote, rhsNote, ((this.note!= null)&&(!this.note.isEmpty())), ((that.note!= null)&&(!that.note.isEmpty())))) {
return false;
}
}
{
List lhsBenefitBalance;
lhsBenefitBalance = (((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty()))?this.getBenefitBalance():null);
List rhsBenefitBalance;
rhsBenefitBalance = (((that.benefitBalance!= null)&&(!that.benefitBalance.isEmpty()))?that.getBenefitBalance():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "benefitBalance", lhsBenefitBalance), LocatorUtils.property(thatLocator, "benefitBalance", rhsBenefitBalance), lhsBenefitBalance, rhsBenefitBalance, ((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty())), ((that.benefitBalance!= null)&&(!that.benefitBalance.isEmpty())))) {
return false;
}
}
return true;
}
@Override
public boolean equals(Object object) {
final EqualsStrategy2 strategy = JAXBEqualsStrategy.getInstance();
return equals(null, null, object, strategy);
}
@Override
public int hashCode(ObjectLocator locator, HashCodeStrategy2 strategy) {
int currentHashCode = super.hashCode(locator, strategy);
{
List theIdentifier;
theIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "identifier", theIdentifier), currentHashCode, theIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())));
}
{
Identifier theClaimIdentifier;
theClaimIdentifier = this.getClaimIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "claimIdentifier", theClaimIdentifier), currentHashCode, theClaimIdentifier, (this.claimIdentifier!= null));
}
{
Reference theClaimReference;
theClaimReference = this.getClaimReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "claimReference", theClaimReference), currentHashCode, theClaimReference, (this.claimReference!= null));
}
{
Identifier theClaimResponseIdentifier;
theClaimResponseIdentifier = this.getClaimResponseIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "claimResponseIdentifier", theClaimResponseIdentifier), currentHashCode, theClaimResponseIdentifier, (this.claimResponseIdentifier!= null));
}
{
Reference theClaimResponseReference;
theClaimResponseReference = this.getClaimResponseReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "claimResponseReference", theClaimResponseReference), currentHashCode, theClaimResponseReference, (this.claimResponseReference!= null));
}
{
List theSubType;
theSubType = (((this.subType!= null)&&(!this.subType.isEmpty()))?this.getSubType():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "subType", theSubType), currentHashCode, theSubType, ((this.subType!= null)&&(!this.subType.isEmpty())));
}
{
Coding theRuleset;
theRuleset = this.getRuleset();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "ruleset", theRuleset), currentHashCode, theRuleset, (this.ruleset!= null));
}
{
Coding theOriginalRuleset;
theOriginalRuleset = this.getOriginalRuleset();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "originalRuleset", theOriginalRuleset), currentHashCode, theOriginalRuleset, (this.originalRuleset!= null));
}
{
DateTime theCreated;
theCreated = this.getCreated();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "created", theCreated), currentHashCode, theCreated, (this.created!= null));
}
{
Period theBillablePeriod;
theBillablePeriod = this.getBillablePeriod();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "billablePeriod", theBillablePeriod), currentHashCode, theBillablePeriod, (this.billablePeriod!= null));
}
{
org.hl7.fhir.String theDisposition;
theDisposition = this.getDisposition();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "disposition", theDisposition), currentHashCode, theDisposition, (this.disposition!= null));
}
{
Identifier theProviderIdentifier;
theProviderIdentifier = this.getProviderIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "providerIdentifier", theProviderIdentifier), currentHashCode, theProviderIdentifier, (this.providerIdentifier!= null));
}
{
Reference theProviderReference;
theProviderReference = this.getProviderReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "providerReference", theProviderReference), currentHashCode, theProviderReference, (this.providerReference!= null));
}
{
Identifier theOrganizationIdentifier;
theOrganizationIdentifier = this.getOrganizationIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "organizationIdentifier", theOrganizationIdentifier), currentHashCode, theOrganizationIdentifier, (this.organizationIdentifier!= null));
}
{
Reference theOrganizationReference;
theOrganizationReference = this.getOrganizationReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "organizationReference", theOrganizationReference), currentHashCode, theOrganizationReference, (this.organizationReference!= null));
}
{
Identifier theFacilityIdentifier;
theFacilityIdentifier = this.getFacilityIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "facilityIdentifier", theFacilityIdentifier), currentHashCode, theFacilityIdentifier, (this.facilityIdentifier!= null));
}
{
Reference theFacilityReference;
theFacilityReference = this.getFacilityReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "facilityReference", theFacilityReference), currentHashCode, theFacilityReference, (this.facilityReference!= null));
}
{
List theRelated;
theRelated = (((this.related!= null)&&(!this.related.isEmpty()))?this.getRelated():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "related", theRelated), currentHashCode, theRelated, ((this.related!= null)&&(!this.related.isEmpty())));
}
{
Identifier thePrescriptionIdentifier;
thePrescriptionIdentifier = this.getPrescriptionIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "prescriptionIdentifier", thePrescriptionIdentifier), currentHashCode, thePrescriptionIdentifier, (this.prescriptionIdentifier!= null));
}
{
Reference thePrescriptionReference;
thePrescriptionReference = this.getPrescriptionReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "prescriptionReference", thePrescriptionReference), currentHashCode, thePrescriptionReference, (this.prescriptionReference!= null));
}
{
Identifier theOriginalPrescriptionIdentifier;
theOriginalPrescriptionIdentifier = this.getOriginalPrescriptionIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "originalPrescriptionIdentifier", theOriginalPrescriptionIdentifier), currentHashCode, theOriginalPrescriptionIdentifier, (this.originalPrescriptionIdentifier!= null));
}
{
Reference theOriginalPrescriptionReference;
theOriginalPrescriptionReference = this.getOriginalPrescriptionReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "originalPrescriptionReference", theOriginalPrescriptionReference), currentHashCode, theOriginalPrescriptionReference, (this.originalPrescriptionReference!= null));
}
{
ExplanationOfBenefitPayee thePayee;
thePayee = this.getPayee();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "payee", thePayee), currentHashCode, thePayee, (this.payee!= null));
}
{
Identifier theReferralIdentifier;
theReferralIdentifier = this.getReferralIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "referralIdentifier", theReferralIdentifier), currentHashCode, theReferralIdentifier, (this.referralIdentifier!= null));
}
{
Reference theReferralReference;
theReferralReference = this.getReferralReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "referralReference", theReferralReference), currentHashCode, theReferralReference, (this.referralReference!= null));
}
{
List theOccurrenceCode;
theOccurrenceCode = (((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty()))?this.getOccurrenceCode():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "occurrenceCode", theOccurrenceCode), currentHashCode, theOccurrenceCode, ((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty())));
}
{
List theOccurenceSpanCode;
theOccurenceSpanCode = (((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty()))?this.getOccurenceSpanCode():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "occurenceSpanCode", theOccurenceSpanCode), currentHashCode, theOccurenceSpanCode, ((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty())));
}
{
List theValueCode;
theValueCode = (((this.valueCode!= null)&&(!this.valueCode.isEmpty()))?this.getValueCode():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueCode", theValueCode), currentHashCode, theValueCode, ((this.valueCode!= null)&&(!this.valueCode.isEmpty())));
}
{
List theDiagnosis;
theDiagnosis = (((this.diagnosis!= null)&&(!this.diagnosis.isEmpty()))?this.getDiagnosis():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "diagnosis", theDiagnosis), currentHashCode, theDiagnosis, ((this.diagnosis!= null)&&(!this.diagnosis.isEmpty())));
}
{
List theProcedure;
theProcedure = (((this.procedure!= null)&&(!this.procedure.isEmpty()))?this.getProcedure():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "procedure", theProcedure), currentHashCode, theProcedure, ((this.procedure!= null)&&(!this.procedure.isEmpty())));
}
{
List theSpecialCondition;
theSpecialCondition = (((this.specialCondition!= null)&&(!this.specialCondition.isEmpty()))?this.getSpecialCondition():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "specialCondition", theSpecialCondition), currentHashCode, theSpecialCondition, ((this.specialCondition!= null)&&(!this.specialCondition.isEmpty())));
}
{
Identifier thePatientIdentifier;
thePatientIdentifier = this.getPatientIdentifier();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patientIdentifier", thePatientIdentifier), currentHashCode, thePatientIdentifier, (this.patientIdentifier!= null));
}
{
Reference thePatientReference;
thePatientReference = this.getPatientReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patientReference", thePatientReference), currentHashCode, thePatientReference, (this.patientReference!= null));
}
{
PositiveInt thePrecedence;
thePrecedence = this.getPrecedence();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "precedence", thePrecedence), currentHashCode, thePrecedence, (this.precedence!= null));
}
{
ExplanationOfBenefitCoverage theCoverage;
theCoverage = this.getCoverage();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "coverage", theCoverage), currentHashCode, theCoverage, (this.coverage!= null));
}
{
Date theAccidentDate;
theAccidentDate = this.getAccidentDate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "accidentDate", theAccidentDate), currentHashCode, theAccidentDate, (this.accidentDate!= null));
}
{
Coding theAccidentType;
theAccidentType = this.getAccidentType();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "accidentType", theAccidentType), currentHashCode, theAccidentType, (this.accidentType!= null));
}
{
Address theAccidentLocationAddress;
theAccidentLocationAddress = this.getAccidentLocationAddress();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "accidentLocationAddress", theAccidentLocationAddress), currentHashCode, theAccidentLocationAddress, (this.accidentLocationAddress!= null));
}
{
Reference theAccidentLocationReference;
theAccidentLocationReference = this.getAccidentLocationReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "accidentLocationReference", theAccidentLocationReference), currentHashCode, theAccidentLocationReference, (this.accidentLocationReference!= null));
}
{
List theInterventionException;
theInterventionException = (((this.interventionException!= null)&&(!this.interventionException.isEmpty()))?this.getInterventionException():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "interventionException", theInterventionException), currentHashCode, theInterventionException, ((this.interventionException!= null)&&(!this.interventionException.isEmpty())));
}
{
List theOnset;
theOnset = (((this.onset!= null)&&(!this.onset.isEmpty()))?this.getOnset():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "onset", theOnset), currentHashCode, theOnset, ((this.onset!= null)&&(!this.onset.isEmpty())));
}
{
Period theEmploymentImpacted;
theEmploymentImpacted = this.getEmploymentImpacted();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "employmentImpacted", theEmploymentImpacted), currentHashCode, theEmploymentImpacted, (this.employmentImpacted!= null));
}
{
Period theHospitalization;
theHospitalization = this.getHospitalization();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "hospitalization", theHospitalization), currentHashCode, theHospitalization, (this.hospitalization!= null));
}
{
List theItem;
theItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "item", theItem), currentHashCode, theItem, ((this.item!= null)&&(!this.item.isEmpty())));
}
{
List theAddItem;
theAddItem = (((this.addItem!= null)&&(!this.addItem.isEmpty()))?this.getAddItem():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "addItem", theAddItem), currentHashCode, theAddItem, ((this.addItem!= null)&&(!this.addItem.isEmpty())));
}
{
List theMissingTeeth;
theMissingTeeth = (((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty()))?this.getMissingTeeth():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "missingTeeth", theMissingTeeth), currentHashCode, theMissingTeeth, ((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty())));
}
{
Money theTotalCost;
theTotalCost = this.getTotalCost();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "totalCost", theTotalCost), currentHashCode, theTotalCost, (this.totalCost!= null));
}
{
Money theUnallocDeductable;
theUnallocDeductable = this.getUnallocDeductable();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "unallocDeductable", theUnallocDeductable), currentHashCode, theUnallocDeductable, (this.unallocDeductable!= null));
}
{
Money theTotalBenefit;
theTotalBenefit = this.getTotalBenefit();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "totalBenefit", theTotalBenefit), currentHashCode, theTotalBenefit, (this.totalBenefit!= null));
}
{
Money thePaymentAdjustment;
thePaymentAdjustment = this.getPaymentAdjustment();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "paymentAdjustment", thePaymentAdjustment), currentHashCode, thePaymentAdjustment, (this.paymentAdjustment!= null));
}
{
Coding thePaymentAdjustmentReason;
thePaymentAdjustmentReason = this.getPaymentAdjustmentReason();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "paymentAdjustmentReason", thePaymentAdjustmentReason), currentHashCode, thePaymentAdjustmentReason, (this.paymentAdjustmentReason!= null));
}
{
Date thePaymentDate;
thePaymentDate = this.getPaymentDate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "paymentDate", thePaymentDate), currentHashCode, thePaymentDate, (this.paymentDate!= null));
}
{
Money thePaymentAmount;
thePaymentAmount = this.getPaymentAmount();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "paymentAmount", thePaymentAmount), currentHashCode, thePaymentAmount, (this.paymentAmount!= null));
}
{
Identifier thePaymentRef;
thePaymentRef = this.getPaymentRef();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "paymentRef", thePaymentRef), currentHashCode, thePaymentRef, (this.paymentRef!= null));
}
{
Coding theReserved;
theReserved = this.getReserved();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "reserved", theReserved), currentHashCode, theReserved, (this.reserved!= null));
}
{
Coding theForm;
theForm = this.getForm();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "form", theForm), currentHashCode, theForm, (this.form!= null));
}
{
List theNote;
theNote = (((this.note!= null)&&(!this.note.isEmpty()))?this.getNote():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "note", theNote), currentHashCode, theNote, ((this.note!= null)&&(!this.note.isEmpty())));
}
{
List theBenefitBalance;
theBenefitBalance = (((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty()))?this.getBenefitBalance():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "benefitBalance", theBenefitBalance), currentHashCode, theBenefitBalance, ((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty())));
}
return currentHashCode;
}
@Override
public int hashCode() {
final HashCodeStrategy2 strategy = JAXBHashCodeStrategy.getInstance();
return this.hashCode(null, strategy);
}
@Override
public java.lang.String toString() {
final ToStringStrategy2 strategy = JAXBToStringStrategy.getInstance();
final StringBuilder buffer = new StringBuilder();
append(null, buffer, strategy);
return buffer.toString();
}
@Override
public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) {
strategy.appendStart(locator, this, buffer);
appendFields(locator, buffer, strategy);
strategy.appendEnd(locator, this, buffer);
return buffer;
}
@Override
public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) {
super.appendFields(locator, buffer, strategy);
{
List theIdentifier;
theIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
strategy.appendField(locator, this, "identifier", buffer, theIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())));
}
{
Identifier theClaimIdentifier;
theClaimIdentifier = this.getClaimIdentifier();
strategy.appendField(locator, this, "claimIdentifier", buffer, theClaimIdentifier, (this.claimIdentifier!= null));
}
{
Reference theClaimReference;
theClaimReference = this.getClaimReference();
strategy.appendField(locator, this, "claimReference", buffer, theClaimReference, (this.claimReference!= null));
}
{
Identifier theClaimResponseIdentifier;
theClaimResponseIdentifier = this.getClaimResponseIdentifier();
strategy.appendField(locator, this, "claimResponseIdentifier", buffer, theClaimResponseIdentifier, (this.claimResponseIdentifier!= null));
}
{
Reference theClaimResponseReference;
theClaimResponseReference = this.getClaimResponseReference();
strategy.appendField(locator, this, "claimResponseReference", buffer, theClaimResponseReference, (this.claimResponseReference!= null));
}
{
List theSubType;
theSubType = (((this.subType!= null)&&(!this.subType.isEmpty()))?this.getSubType():null);
strategy.appendField(locator, this, "subType", buffer, theSubType, ((this.subType!= null)&&(!this.subType.isEmpty())));
}
{
Coding theRuleset;
theRuleset = this.getRuleset();
strategy.appendField(locator, this, "ruleset", buffer, theRuleset, (this.ruleset!= null));
}
{
Coding theOriginalRuleset;
theOriginalRuleset = this.getOriginalRuleset();
strategy.appendField(locator, this, "originalRuleset", buffer, theOriginalRuleset, (this.originalRuleset!= null));
}
{
DateTime theCreated;
theCreated = this.getCreated();
strategy.appendField(locator, this, "created", buffer, theCreated, (this.created!= null));
}
{
Period theBillablePeriod;
theBillablePeriod = this.getBillablePeriod();
strategy.appendField(locator, this, "billablePeriod", buffer, theBillablePeriod, (this.billablePeriod!= null));
}
{
org.hl7.fhir.String theDisposition;
theDisposition = this.getDisposition();
strategy.appendField(locator, this, "disposition", buffer, theDisposition, (this.disposition!= null));
}
{
Identifier theProviderIdentifier;
theProviderIdentifier = this.getProviderIdentifier();
strategy.appendField(locator, this, "providerIdentifier", buffer, theProviderIdentifier, (this.providerIdentifier!= null));
}
{
Reference theProviderReference;
theProviderReference = this.getProviderReference();
strategy.appendField(locator, this, "providerReference", buffer, theProviderReference, (this.providerReference!= null));
}
{
Identifier theOrganizationIdentifier;
theOrganizationIdentifier = this.getOrganizationIdentifier();
strategy.appendField(locator, this, "organizationIdentifier", buffer, theOrganizationIdentifier, (this.organizationIdentifier!= null));
}
{
Reference theOrganizationReference;
theOrganizationReference = this.getOrganizationReference();
strategy.appendField(locator, this, "organizationReference", buffer, theOrganizationReference, (this.organizationReference!= null));
}
{
Identifier theFacilityIdentifier;
theFacilityIdentifier = this.getFacilityIdentifier();
strategy.appendField(locator, this, "facilityIdentifier", buffer, theFacilityIdentifier, (this.facilityIdentifier!= null));
}
{
Reference theFacilityReference;
theFacilityReference = this.getFacilityReference();
strategy.appendField(locator, this, "facilityReference", buffer, theFacilityReference, (this.facilityReference!= null));
}
{
List theRelated;
theRelated = (((this.related!= null)&&(!this.related.isEmpty()))?this.getRelated():null);
strategy.appendField(locator, this, "related", buffer, theRelated, ((this.related!= null)&&(!this.related.isEmpty())));
}
{
Identifier thePrescriptionIdentifier;
thePrescriptionIdentifier = this.getPrescriptionIdentifier();
strategy.appendField(locator, this, "prescriptionIdentifier", buffer, thePrescriptionIdentifier, (this.prescriptionIdentifier!= null));
}
{
Reference thePrescriptionReference;
thePrescriptionReference = this.getPrescriptionReference();
strategy.appendField(locator, this, "prescriptionReference", buffer, thePrescriptionReference, (this.prescriptionReference!= null));
}
{
Identifier theOriginalPrescriptionIdentifier;
theOriginalPrescriptionIdentifier = this.getOriginalPrescriptionIdentifier();
strategy.appendField(locator, this, "originalPrescriptionIdentifier", buffer, theOriginalPrescriptionIdentifier, (this.originalPrescriptionIdentifier!= null));
}
{
Reference theOriginalPrescriptionReference;
theOriginalPrescriptionReference = this.getOriginalPrescriptionReference();
strategy.appendField(locator, this, "originalPrescriptionReference", buffer, theOriginalPrescriptionReference, (this.originalPrescriptionReference!= null));
}
{
ExplanationOfBenefitPayee thePayee;
thePayee = this.getPayee();
strategy.appendField(locator, this, "payee", buffer, thePayee, (this.payee!= null));
}
{
Identifier theReferralIdentifier;
theReferralIdentifier = this.getReferralIdentifier();
strategy.appendField(locator, this, "referralIdentifier", buffer, theReferralIdentifier, (this.referralIdentifier!= null));
}
{
Reference theReferralReference;
theReferralReference = this.getReferralReference();
strategy.appendField(locator, this, "referralReference", buffer, theReferralReference, (this.referralReference!= null));
}
{
List theOccurrenceCode;
theOccurrenceCode = (((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty()))?this.getOccurrenceCode():null);
strategy.appendField(locator, this, "occurrenceCode", buffer, theOccurrenceCode, ((this.occurrenceCode!= null)&&(!this.occurrenceCode.isEmpty())));
}
{
List theOccurenceSpanCode;
theOccurenceSpanCode = (((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty()))?this.getOccurenceSpanCode():null);
strategy.appendField(locator, this, "occurenceSpanCode", buffer, theOccurenceSpanCode, ((this.occurenceSpanCode!= null)&&(!this.occurenceSpanCode.isEmpty())));
}
{
List theValueCode;
theValueCode = (((this.valueCode!= null)&&(!this.valueCode.isEmpty()))?this.getValueCode():null);
strategy.appendField(locator, this, "valueCode", buffer, theValueCode, ((this.valueCode!= null)&&(!this.valueCode.isEmpty())));
}
{
List theDiagnosis;
theDiagnosis = (((this.diagnosis!= null)&&(!this.diagnosis.isEmpty()))?this.getDiagnosis():null);
strategy.appendField(locator, this, "diagnosis", buffer, theDiagnosis, ((this.diagnosis!= null)&&(!this.diagnosis.isEmpty())));
}
{
List theProcedure;
theProcedure = (((this.procedure!= null)&&(!this.procedure.isEmpty()))?this.getProcedure():null);
strategy.appendField(locator, this, "procedure", buffer, theProcedure, ((this.procedure!= null)&&(!this.procedure.isEmpty())));
}
{
List theSpecialCondition;
theSpecialCondition = (((this.specialCondition!= null)&&(!this.specialCondition.isEmpty()))?this.getSpecialCondition():null);
strategy.appendField(locator, this, "specialCondition", buffer, theSpecialCondition, ((this.specialCondition!= null)&&(!this.specialCondition.isEmpty())));
}
{
Identifier thePatientIdentifier;
thePatientIdentifier = this.getPatientIdentifier();
strategy.appendField(locator, this, "patientIdentifier", buffer, thePatientIdentifier, (this.patientIdentifier!= null));
}
{
Reference thePatientReference;
thePatientReference = this.getPatientReference();
strategy.appendField(locator, this, "patientReference", buffer, thePatientReference, (this.patientReference!= null));
}
{
PositiveInt thePrecedence;
thePrecedence = this.getPrecedence();
strategy.appendField(locator, this, "precedence", buffer, thePrecedence, (this.precedence!= null));
}
{
ExplanationOfBenefitCoverage theCoverage;
theCoverage = this.getCoverage();
strategy.appendField(locator, this, "coverage", buffer, theCoverage, (this.coverage!= null));
}
{
Date theAccidentDate;
theAccidentDate = this.getAccidentDate();
strategy.appendField(locator, this, "accidentDate", buffer, theAccidentDate, (this.accidentDate!= null));
}
{
Coding theAccidentType;
theAccidentType = this.getAccidentType();
strategy.appendField(locator, this, "accidentType", buffer, theAccidentType, (this.accidentType!= null));
}
{
Address theAccidentLocationAddress;
theAccidentLocationAddress = this.getAccidentLocationAddress();
strategy.appendField(locator, this, "accidentLocationAddress", buffer, theAccidentLocationAddress, (this.accidentLocationAddress!= null));
}
{
Reference theAccidentLocationReference;
theAccidentLocationReference = this.getAccidentLocationReference();
strategy.appendField(locator, this, "accidentLocationReference", buffer, theAccidentLocationReference, (this.accidentLocationReference!= null));
}
{
List theInterventionException;
theInterventionException = (((this.interventionException!= null)&&(!this.interventionException.isEmpty()))?this.getInterventionException():null);
strategy.appendField(locator, this, "interventionException", buffer, theInterventionException, ((this.interventionException!= null)&&(!this.interventionException.isEmpty())));
}
{
List theOnset;
theOnset = (((this.onset!= null)&&(!this.onset.isEmpty()))?this.getOnset():null);
strategy.appendField(locator, this, "onset", buffer, theOnset, ((this.onset!= null)&&(!this.onset.isEmpty())));
}
{
Period theEmploymentImpacted;
theEmploymentImpacted = this.getEmploymentImpacted();
strategy.appendField(locator, this, "employmentImpacted", buffer, theEmploymentImpacted, (this.employmentImpacted!= null));
}
{
Period theHospitalization;
theHospitalization = this.getHospitalization();
strategy.appendField(locator, this, "hospitalization", buffer, theHospitalization, (this.hospitalization!= null));
}
{
List theItem;
theItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
strategy.appendField(locator, this, "item", buffer, theItem, ((this.item!= null)&&(!this.item.isEmpty())));
}
{
List theAddItem;
theAddItem = (((this.addItem!= null)&&(!this.addItem.isEmpty()))?this.getAddItem():null);
strategy.appendField(locator, this, "addItem", buffer, theAddItem, ((this.addItem!= null)&&(!this.addItem.isEmpty())));
}
{
List theMissingTeeth;
theMissingTeeth = (((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty()))?this.getMissingTeeth():null);
strategy.appendField(locator, this, "missingTeeth", buffer, theMissingTeeth, ((this.missingTeeth!= null)&&(!this.missingTeeth.isEmpty())));
}
{
Money theTotalCost;
theTotalCost = this.getTotalCost();
strategy.appendField(locator, this, "totalCost", buffer, theTotalCost, (this.totalCost!= null));
}
{
Money theUnallocDeductable;
theUnallocDeductable = this.getUnallocDeductable();
strategy.appendField(locator, this, "unallocDeductable", buffer, theUnallocDeductable, (this.unallocDeductable!= null));
}
{
Money theTotalBenefit;
theTotalBenefit = this.getTotalBenefit();
strategy.appendField(locator, this, "totalBenefit", buffer, theTotalBenefit, (this.totalBenefit!= null));
}
{
Money thePaymentAdjustment;
thePaymentAdjustment = this.getPaymentAdjustment();
strategy.appendField(locator, this, "paymentAdjustment", buffer, thePaymentAdjustment, (this.paymentAdjustment!= null));
}
{
Coding thePaymentAdjustmentReason;
thePaymentAdjustmentReason = this.getPaymentAdjustmentReason();
strategy.appendField(locator, this, "paymentAdjustmentReason", buffer, thePaymentAdjustmentReason, (this.paymentAdjustmentReason!= null));
}
{
Date thePaymentDate;
thePaymentDate = this.getPaymentDate();
strategy.appendField(locator, this, "paymentDate", buffer, thePaymentDate, (this.paymentDate!= null));
}
{
Money thePaymentAmount;
thePaymentAmount = this.getPaymentAmount();
strategy.appendField(locator, this, "paymentAmount", buffer, thePaymentAmount, (this.paymentAmount!= null));
}
{
Identifier thePaymentRef;
thePaymentRef = this.getPaymentRef();
strategy.appendField(locator, this, "paymentRef", buffer, thePaymentRef, (this.paymentRef!= null));
}
{
Coding theReserved;
theReserved = this.getReserved();
strategy.appendField(locator, this, "reserved", buffer, theReserved, (this.reserved!= null));
}
{
Coding theForm;
theForm = this.getForm();
strategy.appendField(locator, this, "form", buffer, theForm, (this.form!= null));
}
{
List theNote;
theNote = (((this.note!= null)&&(!this.note.isEmpty()))?this.getNote():null);
strategy.appendField(locator, this, "note", buffer, theNote, ((this.note!= null)&&(!this.note.isEmpty())));
}
{
List theBenefitBalance;
theBenefitBalance = (((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty()))?this.getBenefitBalance():null);
strategy.appendField(locator, this, "benefitBalance", buffer, theBenefitBalance, ((this.benefitBalance!= null)&&(!this.benefitBalance.isEmpty())));
}
return buffer;
}
public void setIdentifier(List value) {
this.identifier = value;
}
public void setSubType(List value) {
this.subType = value;
}
public void setRelated(List value) {
this.related = value;
}
public void setOccurrenceCode(List value) {
this.occurrenceCode = value;
}
public void setOccurenceSpanCode(List value) {
this.occurenceSpanCode = value;
}
public void setValueCode(List value) {
this.valueCode = value;
}
public void setDiagnosis(List value) {
this.diagnosis = value;
}
public void setProcedure(List value) {
this.procedure = value;
}
public void setSpecialCondition(List value) {
this.specialCondition = value;
}
public void setInterventionException(List value) {
this.interventionException = value;
}
public void setOnset(List value) {
this.onset = value;
}
public void setItem(List value) {
this.item = value;
}
public void setAddItem(List value) {
this.addItem = value;
}
public void setMissingTeeth(List value) {
this.missingTeeth = value;
}
public void setNote(List value) {
this.note = value;
}
public void setBenefitBalance(List value) {
this.benefitBalance = value;
}
}