
com.github.rahulsom.cda.POCDMT000040ClinicalDocument Maven / Gradle / Ivy
Show all versions of ihe-iti Show documentation
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.7
// See http://java.sun.com/xml/jaxb
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2015.06.09 at 07:53:51 PM PDT
//
package com.github.rahulsom.cda;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
/**
* Java class for POCD_MT000040.ClinicalDocument complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="POCD_MT000040.ClinicalDocument">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="realmCode" type="{urn:hl7-org:v3}CS" maxOccurs="unbounded" minOccurs="0"/>
* <element name="typeId" type="{urn:hl7-org:v3}POCD_MT000040.InfrastructureRoot.typeId"/>
* <element name="templateId" type="{urn:hl7-org:v3}II" maxOccurs="unbounded" minOccurs="0"/>
* <element name="id" type="{urn:hl7-org:v3}II"/>
* <element name="code" type="{urn:hl7-org:v3}CE"/>
* <element name="title" type="{urn:hl7-org:v3}ST" minOccurs="0"/>
* <element name="effectiveTime" type="{urn:hl7-org:v3}TS"/>
* <element name="confidentialityCode" type="{urn:hl7-org:v3}CE"/>
* <element name="languageCode" type="{urn:hl7-org:v3}CS" minOccurs="0"/>
* <element name="setId" type="{urn:hl7-org:v3}II" minOccurs="0"/>
* <element name="versionNumber" type="{urn:hl7-org:v3}INT" minOccurs="0"/>
* <element name="copyTime" type="{urn:hl7-org:v3}TS" minOccurs="0"/>
* <element name="recordTarget" type="{urn:hl7-org:v3}POCD_MT000040.RecordTarget" maxOccurs="unbounded"/>
* <element name="author" type="{urn:hl7-org:v3}POCD_MT000040.Author" maxOccurs="unbounded"/>
* <element name="dataEnterer" type="{urn:hl7-org:v3}POCD_MT000040.DataEnterer" minOccurs="0"/>
* <element name="informant" type="{urn:hl7-org:v3}POCD_MT000040.Informant12" maxOccurs="unbounded" minOccurs="0"/>
* <element name="custodian" type="{urn:hl7-org:v3}POCD_MT000040.Custodian"/>
* <element name="informationRecipient" type="{urn:hl7-org:v3}POCD_MT000040.InformationRecipient" maxOccurs="unbounded" minOccurs="0"/>
* <element name="legalAuthenticator" type="{urn:hl7-org:v3}POCD_MT000040.LegalAuthenticator" minOccurs="0"/>
* <element name="authenticator" type="{urn:hl7-org:v3}POCD_MT000040.Authenticator" maxOccurs="unbounded" minOccurs="0"/>
* <element name="participant" type="{urn:hl7-org:v3}POCD_MT000040.Participant1" maxOccurs="unbounded" minOccurs="0"/>
* <element name="inFulfillmentOf" type="{urn:hl7-org:v3}POCD_MT000040.InFulfillmentOf" maxOccurs="unbounded" minOccurs="0"/>
* <element name="documentationOf" type="{urn:hl7-org:v3}POCD_MT000040.DocumentationOf" maxOccurs="unbounded" minOccurs="0"/>
* <element name="relatedDocument" type="{urn:hl7-org:v3}POCD_MT000040.RelatedDocument" maxOccurs="unbounded" minOccurs="0"/>
* <element name="authorization" type="{urn:hl7-org:v3}POCD_MT000040.Authorization" maxOccurs="unbounded" minOccurs="0"/>
* <element name="componentOf" type="{urn:hl7-org:v3}POCD_MT000040.Component1" minOccurs="0"/>
* <element name="component" type="{urn:hl7-org:v3}POCD_MT000040.Component2"/>
* </sequence>
* <attribute name="nullFlavor" type="{urn:hl7-org:v3}NullFlavor" />
* <attribute name="classCode" type="{urn:hl7-org:v3}ActClinicalDocument" fixed="DOCCLIN" />
* <attribute name="moodCode" type="{urn:hl7-org:v3}ActMood" fixed="EVN" />
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "POCD_MT000040.ClinicalDocument", namespace = "urn:hl7-org:v3", propOrder = {
"realmCode",
"typeId",
"templateId",
"id",
"code",
"title",
"effectiveTime",
"confidentialityCode",
"languageCode",
"setId",
"versionNumber",
"copyTime",
"recordTarget",
"author",
"dataEnterer",
"informant",
"custodian",
"informationRecipient",
"legalAuthenticator",
"authenticator",
"participant",
"inFulfillmentOf",
"documentationOf",
"relatedDocument",
"authorization",
"componentOf",
"component"
})
public class POCDMT000040ClinicalDocument {
@XmlElement(namespace = "urn:hl7-org:v3")
protected List realmCode;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected POCDMT000040InfrastructureRootTypeId typeId;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List templateId;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected II id;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected CE code;
@XmlElement(namespace = "urn:hl7-org:v3")
protected ST title;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected TS effectiveTime;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected CE confidentialityCode;
@XmlElement(namespace = "urn:hl7-org:v3")
protected CS languageCode;
@XmlElement(namespace = "urn:hl7-org:v3")
protected II setId;
@XmlElement(namespace = "urn:hl7-org:v3")
protected INT versionNumber;
@XmlElement(namespace = "urn:hl7-org:v3")
protected TS copyTime;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected List recordTarget;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected List author;
@XmlElement(namespace = "urn:hl7-org:v3")
protected POCDMT000040DataEnterer dataEnterer;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List informant;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected POCDMT000040Custodian custodian;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List informationRecipient;
@XmlElement(namespace = "urn:hl7-org:v3")
protected POCDMT000040LegalAuthenticator legalAuthenticator;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List authenticator;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List participant;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List inFulfillmentOf;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List documentationOf;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List relatedDocument;
@XmlElement(namespace = "urn:hl7-org:v3")
protected List authorization;
@XmlElement(namespace = "urn:hl7-org:v3")
protected POCDMT000040Component1 componentOf;
@XmlElement(namespace = "urn:hl7-org:v3", required = true)
protected POCDMT000040Component2 component;
@XmlAttribute(name = "nullFlavor")
protected List nullFlavor;
@XmlAttribute(name = "classCode")
protected ActClinicalDocument classCode;
@XmlAttribute(name = "moodCode")
protected List moodCode;
/**
* Gets the value of the realmCode 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 JAXB object.
* This is why there is not a set
method for the realmCode property.
*
*
* For example, to add a new item, do as follows:
*
* getRealmCode().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CS }
*
*
*/
public List getRealmCode() {
if (realmCode == null) {
realmCode = new ArrayList();
}
return this.realmCode;
}
/**
* Gets the value of the typeId property.
*
* @return
* possible object is
* {@link POCDMT000040InfrastructureRootTypeId }
*
*/
public POCDMT000040InfrastructureRootTypeId getTypeId() {
return typeId;
}
/**
* Sets the value of the typeId property.
*
* @param value
* allowed object is
* {@link POCDMT000040InfrastructureRootTypeId }
*
*/
public void setTypeId(POCDMT000040InfrastructureRootTypeId value) {
this.typeId = value;
}
/**
* Gets the value of the templateId 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 JAXB object.
* This is why there is not a set
method for the templateId property.
*
*
* For example, to add a new item, do as follows:
*
* getTemplateId().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link II }
*
*
*/
public List getTemplateId() {
if (templateId == null) {
templateId = new ArrayList();
}
return this.templateId;
}
/**
* Gets the value of the id property.
*
* @return
* possible object is
* {@link II }
*
*/
public II getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value
* allowed object is
* {@link II }
*
*/
public void setId(II value) {
this.id = value;
}
/**
* Gets the value of the code property.
*
* @return
* possible object is
* {@link CE }
*
*/
public CE getCode() {
return code;
}
/**
* Sets the value of the code property.
*
* @param value
* allowed object is
* {@link CE }
*
*/
public void setCode(CE value) {
this.code = value;
}
/**
* Gets the value of the title property.
*
* @return
* possible object is
* {@link ST }
*
*/
public ST getTitle() {
return title;
}
/**
* Sets the value of the title property.
*
* @param value
* allowed object is
* {@link ST }
*
*/
public void setTitle(ST value) {
this.title = value;
}
/**
* Gets the value of the effectiveTime property.
*
* @return
* possible object is
* {@link TS }
*
*/
public TS getEffectiveTime() {
return effectiveTime;
}
/**
* Sets the value of the effectiveTime property.
*
* @param value
* allowed object is
* {@link TS }
*
*/
public void setEffectiveTime(TS value) {
this.effectiveTime = value;
}
/**
* Gets the value of the confidentialityCode property.
*
* @return
* possible object is
* {@link CE }
*
*/
public CE getConfidentialityCode() {
return confidentialityCode;
}
/**
* Sets the value of the confidentialityCode property.
*
* @param value
* allowed object is
* {@link CE }
*
*/
public void setConfidentialityCode(CE value) {
this.confidentialityCode = value;
}
/**
* Gets the value of the languageCode property.
*
* @return
* possible object is
* {@link CS }
*
*/
public CS getLanguageCode() {
return languageCode;
}
/**
* Sets the value of the languageCode property.
*
* @param value
* allowed object is
* {@link CS }
*
*/
public void setLanguageCode(CS value) {
this.languageCode = value;
}
/**
* Gets the value of the setId property.
*
* @return
* possible object is
* {@link II }
*
*/
public II getSetId() {
return setId;
}
/**
* Sets the value of the setId property.
*
* @param value
* allowed object is
* {@link II }
*
*/
public void setSetId(II value) {
this.setId = value;
}
/**
* Gets the value of the versionNumber property.
*
* @return
* possible object is
* {@link INT }
*
*/
public INT getVersionNumber() {
return versionNumber;
}
/**
* Sets the value of the versionNumber property.
*
* @param value
* allowed object is
* {@link INT }
*
*/
public void setVersionNumber(INT value) {
this.versionNumber = value;
}
/**
* Gets the value of the copyTime property.
*
* @return
* possible object is
* {@link TS }
*
*/
public TS getCopyTime() {
return copyTime;
}
/**
* Sets the value of the copyTime property.
*
* @param value
* allowed object is
* {@link TS }
*
*/
public void setCopyTime(TS value) {
this.copyTime = value;
}
/**
* Gets the value of the recordTarget 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 JAXB object.
* This is why there is not a set
method for the recordTarget property.
*
*
* For example, to add a new item, do as follows:
*
* getRecordTarget().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040RecordTarget }
*
*
*/
public List getRecordTarget() {
if (recordTarget == null) {
recordTarget = new ArrayList();
}
return this.recordTarget;
}
/**
* Gets the value of the author 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 JAXB object.
* This is why there is not a set
method for the author property.
*
*
* For example, to add a new item, do as follows:
*
* getAuthor().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040Author }
*
*
*/
public List getAuthor() {
if (author == null) {
author = new ArrayList();
}
return this.author;
}
/**
* Gets the value of the dataEnterer property.
*
* @return
* possible object is
* {@link POCDMT000040DataEnterer }
*
*/
public POCDMT000040DataEnterer getDataEnterer() {
return dataEnterer;
}
/**
* Sets the value of the dataEnterer property.
*
* @param value
* allowed object is
* {@link POCDMT000040DataEnterer }
*
*/
public void setDataEnterer(POCDMT000040DataEnterer value) {
this.dataEnterer = value;
}
/**
* Gets the value of the informant 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 JAXB object.
* This is why there is not a set
method for the informant property.
*
*
* For example, to add a new item, do as follows:
*
* getInformant().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040Informant12 }
*
*
*/
public List getInformant() {
if (informant == null) {
informant = new ArrayList();
}
return this.informant;
}
/**
* Gets the value of the custodian property.
*
* @return
* possible object is
* {@link POCDMT000040Custodian }
*
*/
public POCDMT000040Custodian getCustodian() {
return custodian;
}
/**
* Sets the value of the custodian property.
*
* @param value
* allowed object is
* {@link POCDMT000040Custodian }
*
*/
public void setCustodian(POCDMT000040Custodian value) {
this.custodian = value;
}
/**
* Gets the value of the informationRecipient 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 JAXB object.
* This is why there is not a set
method for the informationRecipient property.
*
*
* For example, to add a new item, do as follows:
*
* getInformationRecipient().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040InformationRecipient }
*
*
*/
public List getInformationRecipient() {
if (informationRecipient == null) {
informationRecipient = new ArrayList();
}
return this.informationRecipient;
}
/**
* Gets the value of the legalAuthenticator property.
*
* @return
* possible object is
* {@link POCDMT000040LegalAuthenticator }
*
*/
public POCDMT000040LegalAuthenticator getLegalAuthenticator() {
return legalAuthenticator;
}
/**
* Sets the value of the legalAuthenticator property.
*
* @param value
* allowed object is
* {@link POCDMT000040LegalAuthenticator }
*
*/
public void setLegalAuthenticator(POCDMT000040LegalAuthenticator value) {
this.legalAuthenticator = value;
}
/**
* Gets the value of the authenticator 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 JAXB object.
* This is why there is not a set
method for the authenticator property.
*
*
* For example, to add a new item, do as follows:
*
* getAuthenticator().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040Authenticator }
*
*
*/
public List getAuthenticator() {
if (authenticator == null) {
authenticator = new ArrayList();
}
return this.authenticator;
}
/**
* Gets the value of the participant 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 JAXB object.
* This is why there is not a set
method for the participant property.
*
*
* For example, to add a new item, do as follows:
*
* getParticipant().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040Participant1 }
*
*
*/
public List getParticipant() {
if (participant == null) {
participant = new ArrayList();
}
return this.participant;
}
/**
* Gets the value of the inFulfillmentOf 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 JAXB object.
* This is why there is not a set
method for the inFulfillmentOf property.
*
*
* For example, to add a new item, do as follows:
*
* getInFulfillmentOf().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040InFulfillmentOf }
*
*
*/
public List getInFulfillmentOf() {
if (inFulfillmentOf == null) {
inFulfillmentOf = new ArrayList();
}
return this.inFulfillmentOf;
}
/**
* Gets the value of the documentationOf 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 JAXB object.
* This is why there is not a set
method for the documentationOf property.
*
*
* For example, to add a new item, do as follows:
*
* getDocumentationOf().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040DocumentationOf }
*
*
*/
public List getDocumentationOf() {
if (documentationOf == null) {
documentationOf = new ArrayList();
}
return this.documentationOf;
}
/**
* Gets the value of the relatedDocument 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 JAXB object.
* This is why there is not a set
method for the relatedDocument property.
*
*
* For example, to add a new item, do as follows:
*
* getRelatedDocument().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040RelatedDocument }
*
*
*/
public List getRelatedDocument() {
if (relatedDocument == null) {
relatedDocument = new ArrayList();
}
return this.relatedDocument;
}
/**
* Gets the value of the authorization 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 JAXB object.
* This is why there is not a set
method for the authorization property.
*
*
* For example, to add a new item, do as follows:
*
* getAuthorization().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link POCDMT000040Authorization }
*
*
*/
public List getAuthorization() {
if (authorization == null) {
authorization = new ArrayList();
}
return this.authorization;
}
/**
* Gets the value of the componentOf property.
*
* @return
* possible object is
* {@link POCDMT000040Component1 }
*
*/
public POCDMT000040Component1 getComponentOf() {
return componentOf;
}
/**
* Sets the value of the componentOf property.
*
* @param value
* allowed object is
* {@link POCDMT000040Component1 }
*
*/
public void setComponentOf(POCDMT000040Component1 value) {
this.componentOf = value;
}
/**
* Gets the value of the component property.
*
* @return
* possible object is
* {@link POCDMT000040Component2 }
*
*/
public POCDMT000040Component2 getComponent() {
return component;
}
/**
* Sets the value of the component property.
*
* @param value
* allowed object is
* {@link POCDMT000040Component2 }
*
*/
public void setComponent(POCDMT000040Component2 value) {
this.component = value;
}
/**
* Gets the value of the nullFlavor 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 JAXB object.
* This is why there is not a set
method for the nullFlavor property.
*
*
* For example, to add a new item, do as follows:
*
* getNullFlavor().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link String }
*
*
*/
public List getNullFlavor() {
if (nullFlavor == null) {
nullFlavor = new ArrayList();
}
return this.nullFlavor;
}
/**
* Gets the value of the classCode property.
*
* @return
* possible object is
* {@link ActClinicalDocument }
*
*/
public ActClinicalDocument getClassCode() {
if (classCode == null) {
return ActClinicalDocument.DOCCLIN;
} else {
return classCode;
}
}
/**
* Sets the value of the classCode property.
*
* @param value
* allowed object is
* {@link ActClinicalDocument }
*
*/
public void setClassCode(ActClinicalDocument value) {
this.classCode = value;
}
/**
* Gets the value of the moodCode 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 JAXB object.
* This is why there is not a set
method for the moodCode property.
*
*
* For example, to add a new item, do as follows:
*
* getMoodCode().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link String }
*
*
*/
public List getMoodCode() {
if (moodCode == null) {
moodCode = new ArrayList();
}
return this.moodCode;
}
public POCDMT000040ClinicalDocument withRealmCode(CS... values) {
if (values!= null) {
for (CS value: values) {
getRealmCode().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withRealmCode(Collection values) {
if (values!= null) {
getRealmCode().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withTypeId(POCDMT000040InfrastructureRootTypeId value) {
setTypeId(value);
return this;
}
public POCDMT000040ClinicalDocument withTemplateId(II... values) {
if (values!= null) {
for (II value: values) {
getTemplateId().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withTemplateId(Collection values) {
if (values!= null) {
getTemplateId().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withId(II value) {
setId(value);
return this;
}
public POCDMT000040ClinicalDocument withCode(CE value) {
setCode(value);
return this;
}
public POCDMT000040ClinicalDocument withTitle(ST value) {
setTitle(value);
return this;
}
public POCDMT000040ClinicalDocument withEffectiveTime(TS value) {
setEffectiveTime(value);
return this;
}
public POCDMT000040ClinicalDocument withConfidentialityCode(CE value) {
setConfidentialityCode(value);
return this;
}
public POCDMT000040ClinicalDocument withLanguageCode(CS value) {
setLanguageCode(value);
return this;
}
public POCDMT000040ClinicalDocument withSetId(II value) {
setSetId(value);
return this;
}
public POCDMT000040ClinicalDocument withVersionNumber(INT value) {
setVersionNumber(value);
return this;
}
public POCDMT000040ClinicalDocument withCopyTime(TS value) {
setCopyTime(value);
return this;
}
public POCDMT000040ClinicalDocument withRecordTarget(POCDMT000040RecordTarget... values) {
if (values!= null) {
for (POCDMT000040RecordTarget value: values) {
getRecordTarget().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withRecordTarget(Collection values) {
if (values!= null) {
getRecordTarget().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withAuthor(POCDMT000040Author... values) {
if (values!= null) {
for (POCDMT000040Author value: values) {
getAuthor().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withAuthor(Collection values) {
if (values!= null) {
getAuthor().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withDataEnterer(POCDMT000040DataEnterer value) {
setDataEnterer(value);
return this;
}
public POCDMT000040ClinicalDocument withInformant(POCDMT000040Informant12 ... values) {
if (values!= null) {
for (POCDMT000040Informant12 value: values) {
getInformant().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withInformant(Collection values) {
if (values!= null) {
getInformant().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withCustodian(POCDMT000040Custodian value) {
setCustodian(value);
return this;
}
public POCDMT000040ClinicalDocument withInformationRecipient(POCDMT000040InformationRecipient... values) {
if (values!= null) {
for (POCDMT000040InformationRecipient value: values) {
getInformationRecipient().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withInformationRecipient(Collection values) {
if (values!= null) {
getInformationRecipient().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withLegalAuthenticator(POCDMT000040LegalAuthenticator value) {
setLegalAuthenticator(value);
return this;
}
public POCDMT000040ClinicalDocument withAuthenticator(POCDMT000040Authenticator... values) {
if (values!= null) {
for (POCDMT000040Authenticator value: values) {
getAuthenticator().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withAuthenticator(Collection values) {
if (values!= null) {
getAuthenticator().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withParticipant(POCDMT000040Participant1 ... values) {
if (values!= null) {
for (POCDMT000040Participant1 value: values) {
getParticipant().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withParticipant(Collection values) {
if (values!= null) {
getParticipant().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withInFulfillmentOf(POCDMT000040InFulfillmentOf... values) {
if (values!= null) {
for (POCDMT000040InFulfillmentOf value: values) {
getInFulfillmentOf().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withInFulfillmentOf(Collection values) {
if (values!= null) {
getInFulfillmentOf().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withDocumentationOf(POCDMT000040DocumentationOf... values) {
if (values!= null) {
for (POCDMT000040DocumentationOf value: values) {
getDocumentationOf().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withDocumentationOf(Collection values) {
if (values!= null) {
getDocumentationOf().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withRelatedDocument(POCDMT000040RelatedDocument... values) {
if (values!= null) {
for (POCDMT000040RelatedDocument value: values) {
getRelatedDocument().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withRelatedDocument(Collection values) {
if (values!= null) {
getRelatedDocument().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withAuthorization(POCDMT000040Authorization... values) {
if (values!= null) {
for (POCDMT000040Authorization value: values) {
getAuthorization().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withAuthorization(Collection values) {
if (values!= null) {
getAuthorization().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withComponentOf(POCDMT000040Component1 value) {
setComponentOf(value);
return this;
}
public POCDMT000040ClinicalDocument withComponent(POCDMT000040Component2 value) {
setComponent(value);
return this;
}
public POCDMT000040ClinicalDocument withNullFlavor(String... values) {
if (values!= null) {
for (String value: values) {
getNullFlavor().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withNullFlavor(Collection values) {
if (values!= null) {
getNullFlavor().addAll(values);
}
return this;
}
public POCDMT000040ClinicalDocument withClassCode(ActClinicalDocument value) {
setClassCode(value);
return this;
}
public POCDMT000040ClinicalDocument withMoodCode(String... values) {
if (values!= null) {
for (String value: values) {
getMoodCode().add(value);
}
}
return this;
}
public POCDMT000040ClinicalDocument withMoodCode(Collection values) {
if (values!= null) {
getMoodCode().addAll(values);
}
return this;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}
@Override
public boolean equals(Object that) {
return EqualsBuilder.reflectionEquals(this, that);
}
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}
}