package org.hl7.v3;
import java.util.ArrayList;
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.XmlType;
/**
* <p>
* Java class for POCD_MT000040.SpecimenRole complex type.
*
* <p>
* The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* <complexType name="POCD_MT000040.SpecimenRole">
* <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" minOccurs="0"/>
* <element name="templateId" type="{urn:hl7-org:v3}II" maxOccurs="unbounded" minOccurs="0"/>
* <element name="id" type="{urn:hl7-org:v3}II" maxOccurs="unbounded" minOccurs="0"/>
* <element name="specimenPlayingEntity" type="{urn:hl7-org:v3}POCD_MT000040.PlayingEntity" minOccurs="0"/>
* </sequence>
* <attribute name="nullFlavor" type="{urn:hl7-org:v3}NullFlavor" />
* <attribute name="classCode" type="{urn:hl7-org:v3}RoleClassSpecimen" fixed="SPEC" />
* </restriction>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "POCD_MT000040.SpecimenRole", propOrder = {
"realmCode", "typeId", "templateId", "id", "specimenPlayingEntity"
})
public class POCDMT000040SpecimenRole {
protected List<CS> realmCode;
protected POCDMT000040InfrastructureRootTypeId typeId;
protected List<II> templateId;
protected List<II> id;
protected POCDMT000040PlayingEntity specimenPlayingEntity;
@XmlAttribute
protected List<String> nullFlavor;
@XmlAttribute
protected RoleClassSpecimen classCode;
/**
* Gets the value of the realmCode property.
*
* <p>
* 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 <CODE>set</CODE> method for the realmCode property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getRealmCode().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list {@link CS }
*
*
*/
public List<CS> getRealmCode(){
if (realmCode == null) {
realmCode = new ArrayList<CS>();
}
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.
*
* <p>
* 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 <CODE>set</CODE> method for the templateId property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getTemplateId().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list {@link II }
*
*
*/
public List<II> getTemplateId(){
if (templateId == null) {
templateId = new ArrayList<II>();
}
return this.templateId;
}
/**
* Gets the value of the id property.
*
* <p>
* 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 <CODE>set</CODE> method for the id property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getId().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list {@link II }
*
*
*/
public List<II> getId(){
if (id == null) {
id = new ArrayList<II>();
}
return this.id;
}
/**
* Gets the value of the specimenPlayingEntity property.
*
* @return possible object is {@link POCDMT000040PlayingEntity }
*
*/
public POCDMT000040PlayingEntity getSpecimenPlayingEntity(){
return specimenPlayingEntity;
}
/**
* Sets the value of the specimenPlayingEntity property.
*
* @param value
* allowed object is {@link POCDMT000040PlayingEntity }
*
*/
public void setSpecimenPlayingEntity(POCDMT000040PlayingEntity value){
this.specimenPlayingEntity = value;
}
/**
* Gets the value of the nullFlavor property.
*
* <p>
* 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 <CODE>set</CODE> method for the nullFlavor property.
*
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getNullFlavor().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list {@link String }
*
*
*/
public List<String> getNullFlavor(){
if (nullFlavor == null) {
nullFlavor = new ArrayList<String>();
}
return this.nullFlavor;
}
/**
* Gets the value of the classCode property.
*
* @return possible object is {@link RoleClassSpecimen }
*
*/
public RoleClassSpecimen getClassCode(){
if (classCode == null) {
return RoleClassSpecimen.SPEC;
} else {
return classCode;
}
}
/**
* Sets the value of the classCode property.
*
* @param value
* allowed object is {@link RoleClassSpecimen }
*
*/
public void setClassCode(RoleClassSpecimen value){
this.classCode = value;
}
}