/FileExtraction/Java_unseen/IMS-MAXIMS_openMAXIMS/Source Library/openmaxims_workspace/ValueObjects/src/ims/clinical/vo/VTERiskAssessmentVo.java
//#############################################################################
//#                                                                           #
//#  Copyright (C) <2015>  <IMS MAXIMS>                                       #
//#                                                                           #
//#  This program is free software: you can redistribute it and/or modify     #
//#  it under the terms of the GNU Affero General Public License as           #
//#  published by the Free Software Foundation, either version 3 of the       #
//#  License, or (at your option) any later version.                          # 
//#                                                                           #
//#  This program is distributed in the hope that it will be useful,          #
//#  but WITHOUT ANY WARRANTY; without even the implied warranty of           #
//#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            #
//#  GNU Affero General Public License for more details.                      #
//#                                                                           #
//#  You should have received a copy of the GNU Affero General Public License #
//#  along with this program.  If not, see <http://www.gnu.org/licenses/>.    #
//#                                                                           #
//#  IMS MAXIMS provides absolutely NO GUARANTEE OF THE CLINICAL SAFTEY of    #
//#  this program.  Users of this software do so entirely at their own risk.  #
//#  IMS MAXIMS only ensures the Clinical Safety of unaltered run-time        #
//#  software that it builds, deploys and maintains.                          #
//#                                                                           #
//#############################################################################
//#EOH
// This code was generated by Barbara Worwood using IMS Development Environment (version 1.80 build 5589.25814)
// Copyright (C) 1995-2015 IMS MAXIMS. All rights reserved.
// WARNING: DO NOT MODIFY the content of this file

package ims.clinical.vo;

/**
 * Linked to core.clinical.VTERiskAssessment business object (ID: 1072100100).
 */
public class VTERiskAssessmentVo extends ims.core.clinical.vo.VTERiskAssessmentRefVo implements ims.vo.ImsCloneable, Comparable
{
	private static final long serialVersionUID = 1L;

	public VTERiskAssessmentVo()
	{
	}
	public VTERiskAssessmentVo(Integer id, int version)
	{
		super(id, version);
	}
	public VTERiskAssessmentVo(ims.clinical.vo.beans.VTERiskAssessmentVoBean bean)
	{
		this.id = bean.getId();
		this.version = bean.getVersion();
		this.patient = bean.getPatient() == null ? null : bean.getPatient().buildVo();
		this.carecontext = bean.getCareContext() == null ? null : new ims.core.admin.vo.CareContextRefVo(new Integer(bean.getCareContext().getId()), bean.getCareContext().getVersion());
		this.authoringinformation = bean.getAuthoringInformation() == null ? null : bean.getAuthoringInformation().buildVo();
		this.recordinginformation = bean.getRecordingInformation() == null ? null : bean.getRecordingInformation().buildVo();
		this.vteassessmentstatus = bean.getVTEAssessmentStatus() == null ? null : ims.clinical.vo.lookups.VTEAsessmentStatus.buildLookup(bean.getVTEAssessmentStatus());
		this.completedby = bean.getCompletedBy() == null ? null : bean.getCompletedBy().buildVo();
		this.notexpectedreducedmobility = bean.getNotExpectedReducedMobility() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getNotExpectedReducedMobility());
		this.activecancer = bean.getActiveCancer() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getActiveCancer());
		this.ageoversixty = bean.getAgeOverSixty() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAgeOverSixty());
		this.dehydration = bean.getDehydration() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getDehydration());
		this.knownthrombophilias = bean.getKnownThrombophilias() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getKnownThrombophilias());
		this.obesity = bean.getObesity() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getObesity());
		this.significantmorbidities = bean.getSignificantMorbidities() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSignificantMorbidities());
		this.historyofvte = bean.getHistoryOfVTE() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHistoryOfVTE());
		this.useofhrt = bean.getUseOfHRT() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUseOfHRT());
		this.useofostogren = bean.getUseOfOstogren() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUseOfOstogren());
		this.varicoseveins = bean.getVaricoseVeins() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getVaricoseVeins());
		this.pregnancy = bean.getPregnancy() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getPregnancy());
		this.reducedmobility = bean.getReducedMobility() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getReducedMobility());
		this.criticalcareadmission = bean.getCriticalCareAdmission() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getCriticalCareAdmission());
		this.hipkneereplacement = bean.getHipKneeReplacement() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHipKneeReplacement());
		this.hipfracture = bean.getHipFracture() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHipFracture());
		this.anaestheticandsurgery = bean.getAnaestheticAndSurgery() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAnaestheticAndSurgery());
		this.acutesurgicaladmission = bean.getAcuteSurgicalAdmission() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcuteSurgicalAdmission());
		this.surgerysignificantmobilityreduction = bean.getSurgerySignificantMobilityReduction() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSurgerySignificantMobilityReduction());
		this.activebleeding = bean.getActiveBleeding() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getActiveBleeding());
		this.acquiredbleeding = bean.getAcquiredBleeding() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcquiredBleeding());
		this.concurrentanticoagulants = bean.getConcurrentAnticoagulants() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getConcurrentAnticoagulants());
		this.uncontrolledhypertension = bean.getUncontrolledHypertension() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUncontrolledHypertension());
		this.thrombocytopenia = bean.getThrombocytopenia() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getThrombocytopenia());
		this.acutestroke = bean.getAcuteStroke() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcuteStroke());
		this.untreatedbleedingdisorder = bean.getUntreatedBleedingDisorder() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUntreatedBleedingDisorder());
		this.neurospinaleyesurgery = bean.getNeuroSpinalEyeSurgery() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getNeuroSpinalEyeSurgery());
		this.otherprocedurewithhighbleedingrisk = bean.getOtherProcedureWithHighBleedingRisk() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getOtherProcedureWithHighBleedingRisk());
		this.lumbarpuncturewithinnext12hrs = bean.getLumbarPunctureWithinNext12hrs() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getLumbarPunctureWithinNext12hrs());
		this.lumbarpunctureprevious4hrs = bean.getLumbarPuncturePrevious4hrs() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getLumbarPuncturePrevious4hrs());
		this.riskgroup = bean.getRiskGroup() == null ? null : ims.clinical.vo.lookups.VTERiskGroup.buildLookup(bean.getRiskGroup());
		this.surgerylowerlimbpelvis60mins = bean.getSurgeryLowerLimbPelvis60mins() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSurgeryLowerLimbPelvis60mins());
		this.prophylaxisoffered = ims.clinical.vo.lookups.ProphylaxisOfferedCollection.buildFromBeanCollection(bean.getProphylaxisOffered());
		this.comments = bean.getComments();
		this.contexttype = bean.getContextType() == null ? null : ims.clinical.vo.lookups.VTEAssessmentContextType.buildLookup(bean.getContextType());
		this.used = bean.getUsed();
		this.declinedinformation = bean.getDeclinedInformation() == null ? null : bean.getDeclinedInformation().buildVo();
		this.validatedinformation = bean.getValidatedInformation() == null ? null : bean.getValidatedInformation().buildVo();
		this.declinedreason = bean.getDeclinedReason() == null ? null : ims.clinical.vo.lookups.VTEAssessmentStatusReason.buildLookup(bean.getDeclinedReason());
	}
	public void populate(ims.vo.ValueObjectBeanMap map, ims.clinical.vo.beans.VTERiskAssessmentVoBean bean)
	{
		this.id = bean.getId();
		this.version = bean.getVersion();
		this.patient = bean.getPatient() == null ? null : bean.getPatient().buildVo(map);
		this.carecontext = bean.getCareContext() == null ? null : new ims.core.admin.vo.CareContextRefVo(new Integer(bean.getCareContext().getId()), bean.getCareContext().getVersion());
		this.authoringinformation = bean.getAuthoringInformation() == null ? null : bean.getAuthoringInformation().buildVo(map);
		this.recordinginformation = bean.getRecordingInformation() == null ? null : bean.getRecordingInformation().buildVo(map);
		this.vteassessmentstatus = bean.getVTEAssessmentStatus() == null ? null : ims.clinical.vo.lookups.VTEAsessmentStatus.buildLookup(bean.getVTEAssessmentStatus());
		this.completedby = bean.getCompletedBy() == null ? null : bean.getCompletedBy().buildVo(map);
		this.notexpectedreducedmobility = bean.getNotExpectedReducedMobility() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getNotExpectedReducedMobility());
		this.activecancer = bean.getActiveCancer() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getActiveCancer());
		this.ageoversixty = bean.getAgeOverSixty() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAgeOverSixty());
		this.dehydration = bean.getDehydration() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getDehydration());
		this.knownthrombophilias = bean.getKnownThrombophilias() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getKnownThrombophilias());
		this.obesity = bean.getObesity() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getObesity());
		this.significantmorbidities = bean.getSignificantMorbidities() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSignificantMorbidities());
		this.historyofvte = bean.getHistoryOfVTE() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHistoryOfVTE());
		this.useofhrt = bean.getUseOfHRT() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUseOfHRT());
		this.useofostogren = bean.getUseOfOstogren() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUseOfOstogren());
		this.varicoseveins = bean.getVaricoseVeins() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getVaricoseVeins());
		this.pregnancy = bean.getPregnancy() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getPregnancy());
		this.reducedmobility = bean.getReducedMobility() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getReducedMobility());
		this.criticalcareadmission = bean.getCriticalCareAdmission() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getCriticalCareAdmission());
		this.hipkneereplacement = bean.getHipKneeReplacement() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHipKneeReplacement());
		this.hipfracture = bean.getHipFracture() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getHipFracture());
		this.anaestheticandsurgery = bean.getAnaestheticAndSurgery() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAnaestheticAndSurgery());
		this.acutesurgicaladmission = bean.getAcuteSurgicalAdmission() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcuteSurgicalAdmission());
		this.surgerysignificantmobilityreduction = bean.getSurgerySignificantMobilityReduction() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSurgerySignificantMobilityReduction());
		this.activebleeding = bean.getActiveBleeding() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getActiveBleeding());
		this.acquiredbleeding = bean.getAcquiredBleeding() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcquiredBleeding());
		this.concurrentanticoagulants = bean.getConcurrentAnticoagulants() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getConcurrentAnticoagulants());
		this.uncontrolledhypertension = bean.getUncontrolledHypertension() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUncontrolledHypertension());
		this.thrombocytopenia = bean.getThrombocytopenia() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getThrombocytopenia());
		this.acutestroke = bean.getAcuteStroke() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getAcuteStroke());
		this.untreatedbleedingdisorder = bean.getUntreatedBleedingDisorder() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getUntreatedBleedingDisorder());
		this.neurospinaleyesurgery = bean.getNeuroSpinalEyeSurgery() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getNeuroSpinalEyeSurgery());
		this.otherprocedurewithhighbleedingrisk = bean.getOtherProcedureWithHighBleedingRisk() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getOtherProcedureWithHighBleedingRisk());
		this.lumbarpuncturewithinnext12hrs = bean.getLumbarPunctureWithinNext12hrs() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getLumbarPunctureWithinNext12hrs());
		this.lumbarpunctureprevious4hrs = bean.getLumbarPuncturePrevious4hrs() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getLumbarPuncturePrevious4hrs());
		this.riskgroup = bean.getRiskGroup() == null ? null : ims.clinical.vo.lookups.VTERiskGroup.buildLookup(bean.getRiskGroup());
		this.surgerylowerlimbpelvis60mins = bean.getSurgeryLowerLimbPelvis60mins() == null ? null : ims.core.vo.lookups.YesNo.buildLookup(bean.getSurgeryLowerLimbPelvis60mins());
		this.prophylaxisoffered = ims.clinical.vo.lookups.ProphylaxisOfferedCollection.buildFromBeanCollection(bean.getProphylaxisOffered());
		this.comments = bean.getComments();
		this.contexttype = bean.getContextType() == null ? null : ims.clinical.vo.lookups.VTEAssessmentContextType.buildLookup(bean.getContextType());
		this.used = bean.getUsed();
		this.declinedinformation = bean.getDeclinedInformation() == null ? null : bean.getDeclinedInformation().buildVo(map);
		this.validatedinformation = bean.getValidatedInformation() == null ? null : bean.getValidatedInformation().buildVo(map);
		this.declinedreason = bean.getDeclinedReason() == null ? null : ims.clinical.vo.lookups.VTEAssessmentStatusReason.buildLookup(bean.getDeclinedReason());
	}
	public ims.vo.ValueObjectBean getBean()
	{
		return this.getBean(new ims.vo.ValueObjectBeanMap());
	}
	public ims.vo.ValueObjectBean getBean(ims.vo.ValueObjectBeanMap map)
	{
		ims.clinical.vo.beans.VTERiskAssessmentVoBean bean = null;
		if(map != null)
			bean = (ims.clinical.vo.beans.VTERiskAssessmentVoBean)map.getValueObjectBean(this);
		if (bean == null)
		{
			bean = new ims.clinical.vo.beans.VTERiskAssessmentVoBean();
			map.addValueObjectBean(this, bean);
			bean.populate(map, this);
		}
		return bean;
	}
	public Object getFieldValueByFieldName(String fieldName)
	{
		if(fieldName == null)
			throw new ims.framework.exceptions.CodingRuntimeException("Invalid field name");
		fieldName = fieldName.toUpperCase();
		if(fieldName.equals("PATIENT"))
			return getPatient();
		if(fieldName.equals("CARECONTEXT"))
			return getCareContext();
		if(fieldName.equals("AUTHORINGINFORMATION"))
			return getAuthoringInformation();
		if(fieldName.equals("RECORDINGINFORMATION"))
			return getRecordingInformation();
		if(fieldName.equals("VTEASSESSMENTSTATUS"))
			return getVTEAssessmentStatus();
		if(fieldName.equals("COMPLETEDBY"))
			return getCompletedBy();
		if(fieldName.equals("NOTEXPECTEDREDUCEDMOBILITY"))
			return getNotExpectedReducedMobility();
		if(fieldName.equals("ACTIVECANCER"))
			return getActiveCancer();
		if(fieldName.equals("AGEOVERSIXTY"))
			return getAgeOverSixty();
		if(fieldName.equals("DEHYDRATION"))
			return getDehydration();
		if(fieldName.equals("KNOWNTHROMBOPHILIAS"))
			return getKnownThrombophilias();
		if(fieldName.equals("OBESITY"))
			return getObesity();
		if(fieldName.equals("SIGNIFICANTMORBIDITIES"))
			return getSignificantMorbidities();
		if(fieldName.equals("HISTORYOFVTE"))
			return getHistoryOfVTE();
		if(fieldName.equals("USEOFHRT"))
			return getUseOfHRT();
		if(fieldName.equals("USEOFOSTOGREN"))
			return getUseOfOstogren();
		if(fieldName.equals("VARICOSEVEINS"))
			return getVaricoseVeins();
		if(fieldName.equals("PREGNANCY"))
			return getPregnancy();
		if(fieldName.equals("REDUCEDMOBILITY"))
			return getReducedMobility();
		if(fieldName.equals("CRITICALCAREADMISSION"))
			return getCriticalCareAdmission();
		if(fieldName.equals("HIPKNEEREPLACEMENT"))
			return getHipKneeReplacement();
		if(fieldName.equals("HIPFRACTURE"))
			return getHipFracture();
		if(fieldName.equals("ANAESTHETICANDSURGERY"))
			return getAnaestheticAndSurgery();
		if(fieldName.equals("ACUTESURGICALADMISSION"))
			return getAcuteSurgicalAdmission();
		if(fieldName.equals("SURGERYSIGNIFICANTMOBILITYREDUCTION"))
			return getSurgerySignificantMobilityReduction();
		if(fieldName.equals("ACTIVEBLEEDING"))
			return getActiveBleeding();
		if(fieldName.equals("ACQUIREDBLEEDING"))
			return getAcquiredBleeding();
		if(fieldName.equals("CONCURRENTANTICOAGULANTS"))
			return getConcurrentAnticoagulants();
		if(fieldName.equals("UNCONTROLLEDHYPERTENSION"))
			return getUncontrolledHypertension();
		if(fieldName.equals("THROMBOCYTOPENIA"))
			return getThrombocytopenia();
		if(fieldName.equals("ACUTESTROKE"))
			return getAcuteStroke();
		if(fieldName.equals("UNTREATEDBLEEDINGDISORDER"))
			return getUntreatedBleedingDisorder();
		if(fieldName.equals("NEUROSPINALEYESURGERY"))
			return getNeuroSpinalEyeSurgery();
		if(fieldName.equals("OTHERPROCEDUREWITHHIGHBLEEDINGRISK"))
			return getOtherProcedureWithHighBleedingRisk();
		if(fieldName.equals("LUMBARPUNCTUREWITHINNEXT12HRS"))
			return getLumbarPunctureWithinNext12hrs();
		if(fieldName.equals("LUMBARPUNCTUREPREVIOUS4HRS"))
			return getLumbarPuncturePrevious4hrs();
		if(fieldName.equals("RISKGROUP"))
			return getRiskGroup();
		if(fieldName.equals("SURGERYLOWERLIMBPELVIS60MINS"))
			return getSurgeryLowerLimbPelvis60mins();
		if(fieldName.equals("PROPHYLAXISOFFERED"))
			return getProphylaxisOffered();
		if(fieldName.equals("COMMENTS"))
			return getComments();
		if(fieldName.equals("CONTEXTTYPE"))
			return getContextType();
		if(fieldName.equals("USED"))
			return getUsed();
		if(fieldName.equals("DECLINEDINFORMATION"))
			return getDeclinedInformation();
		if(fieldName.equals("VALIDATEDINFORMATION"))
			return getValidatedInformation();
		if(fieldName.equals("DECLINEDREASON"))
			return getDeclinedReason();
		return super.getFieldValueByFieldName(fieldName);
	}
	public boolean getPatientIsNotNull()
	{
		return this.patient != null;
	}
	public ims.core.vo.PatientShort getPatient()
	{
		return this.patient;
	}
	public void setPatient(ims.core.vo.PatientShort value)
	{
		this.isValidated = false;
		this.patient = value;
	}
	public boolean getCareContextIsNotNull()
	{
		return this.carecontext != null;
	}
	public ims.core.admin.vo.CareContextRefVo getCareContext()
	{
		return this.carecontext;
	}
	public void setCareContext(ims.core.admin.vo.CareContextRefVo value)
	{
		this.isValidated = false;
		this.carecontext = value;
	}
	public boolean getAuthoringInformationIsNotNull()
	{
		return this.authoringinformation != null;
	}
	public ims.core.vo.AuthoringInformationVo getAuthoringInformation()
	{
		return this.authoringinformation;
	}
	public void setAuthoringInformation(ims.core.vo.AuthoringInformationVo value)
	{
		this.isValidated = false;
		this.authoringinformation = value;
	}
	public boolean getRecordingInformationIsNotNull()
	{
		return this.recordinginformation != null;
	}
	public ims.core.vo.RecordingUserInformationVo getRecordingInformation()
	{
		return this.recordinginformation;
	}
	public void setRecordingInformation(ims.core.vo.RecordingUserInformationVo value)
	{
		this.isValidated = false;
		this.recordinginformation = value;
	}
	public boolean getVTEAssessmentStatusIsNotNull()
	{
		return this.vteassessmentstatus != null;
	}
	public ims.clinical.vo.lookups.VTEAsessmentStatus getVTEAssessmentStatus()
	{
		return this.vteassessmentstatus;
	}
	public void setVTEAssessmentStatus(ims.clinical.vo.lookups.VTEAsessmentStatus value)
	{
		this.isValidated = false;
		this.vteassessmentstatus = value;
	}
	public boolean getCompletedByIsNotNull()
	{
		return this.completedby != null;
	}
	public ims.core.vo.RecordingUserInformationVo getCompletedBy()
	{
		return this.completedby;
	}
	public void setCompletedBy(ims.core.vo.RecordingUserInformationVo value)
	{
		this.isValidated = false;
		this.completedby = value;
	}
	public boolean getNotExpectedReducedMobilityIsNotNull()
	{
		return this.notexpectedreducedmobility != null;
	}
	public ims.core.vo.lookups.YesNo getNotExpectedReducedMobility()
	{
		return this.notexpectedreducedmobility;
	}
	public void setNotExpectedReducedMobility(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.notexpectedreducedmobility = value;
	}
	public boolean getActiveCancerIsNotNull()
	{
		return this.activecancer != null;
	}
	public ims.core.vo.lookups.YesNo getActiveCancer()
	{
		return this.activecancer;
	}
	public void setActiveCancer(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.activecancer = value;
	}
	public boolean getAgeOverSixtyIsNotNull()
	{
		return this.ageoversixty != null;
	}
	public ims.core.vo.lookups.YesNo getAgeOverSixty()
	{
		return this.ageoversixty;
	}
	public void setAgeOverSixty(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.ageoversixty = value;
	}
	public boolean getDehydrationIsNotNull()
	{
		return this.dehydration != null;
	}
	public ims.core.vo.lookups.YesNo getDehydration()
	{
		return this.dehydration;
	}
	public void setDehydration(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.dehydration = value;
	}
	public boolean getKnownThrombophiliasIsNotNull()
	{
		return this.knownthrombophilias != null;
	}
	public ims.core.vo.lookups.YesNo getKnownThrombophilias()
	{
		return this.knownthrombophilias;
	}
	public void setKnownThrombophilias(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.knownthrombophilias = value;
	}
	public boolean getObesityIsNotNull()
	{
		return this.obesity != null;
	}
	public ims.core.vo.lookups.YesNo getObesity()
	{
		return this.obesity;
	}
	public void setObesity(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.obesity = value;
	}
	public boolean getSignificantMorbiditiesIsNotNull()
	{
		return this.significantmorbidities != null;
	}
	public ims.core.vo.lookups.YesNo getSignificantMorbidities()
	{
		return this.significantmorbidities;
	}
	public void setSignificantMorbidities(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.significantmorbidities = value;
	}
	public boolean getHistoryOfVTEIsNotNull()
	{
		return this.historyofvte != null;
	}
	public ims.core.vo.lookups.YesNo getHistoryOfVTE()
	{
		return this.historyofvte;
	}
	public void setHistoryOfVTE(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.historyofvte = value;
	}
	public boolean getUseOfHRTIsNotNull()
	{
		return this.useofhrt != null;
	}
	public ims.core.vo.lookups.YesNo getUseOfHRT()
	{
		return this.useofhrt;
	}
	public void setUseOfHRT(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.useofhrt = value;
	}
	public boolean getUseOfOstogrenIsNotNull()
	{
		return this.useofostogren != null;
	}
	public ims.core.vo.lookups.YesNo getUseOfOstogren()
	{
		return this.useofostogren;
	}
	public void setUseOfOstogren(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.useofostogren = value;
	}
	public boolean getVaricoseVeinsIsNotNull()
	{
		return this.varicoseveins != null;
	}
	public ims.core.vo.lookups.YesNo getVaricoseVeins()
	{
		return this.varicoseveins;
	}
	public void setVaricoseVeins(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.varicoseveins = value;
	}
	public boolean getPregnancyIsNotNull()
	{
		return this.pregnancy != null;
	}
	public ims.core.vo.lookups.YesNo getPregnancy()
	{
		return this.pregnancy;
	}
	public void setPregnancy(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.pregnancy = value;
	}
	public boolean getReducedMobilityIsNotNull()
	{
		return this.reducedmobility != null;
	}
	public ims.core.vo.lookups.YesNo getReducedMobility()
	{
		return this.reducedmobility;
	}
	public void setReducedMobility(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.reducedmobility = value;
	}
	public boolean getCriticalCareAdmissionIsNotNull()
	{
		return this.criticalcareadmission != null;
	}
	public ims.core.vo.lookups.YesNo getCriticalCareAdmission()
	{
		return this.criticalcareadmission;
	}
	public void setCriticalCareAdmission(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.criticalcareadmission = value;
	}
	public boolean getHipKneeReplacementIsNotNull()
	{
		return this.hipkneereplacement != null;
	}
	public ims.core.vo.lookups.YesNo getHipKneeReplacement()
	{
		return this.hipkneereplacement;
	}
	public void setHipKneeReplacement(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.hipkneereplacement = value;
	}
	public boolean getHipFractureIsNotNull()
	{
		return this.hipfracture != null;
	}
	public ims.core.vo.lookups.YesNo getHipFracture()
	{
		return this.hipfracture;
	}
	public void setHipFracture(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.hipfracture = value;
	}
	public boolean getAnaestheticAndSurgeryIsNotNull()
	{
		return this.anaestheticandsurgery != null;
	}
	public ims.core.vo.lookups.YesNo getAnaestheticAndSurgery()
	{
		return this.anaestheticandsurgery;
	}
	public void setAnaestheticAndSurgery(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.anaestheticandsurgery = value;
	}
	public boolean getAcuteSurgicalAdmissionIsNotNull()
	{
		return this.acutesurgicaladmission != null;
	}
	public ims.core.vo.lookups.YesNo getAcuteSurgicalAdmission()
	{
		return this.acutesurgicaladmission;
	}
	public void setAcuteSurgicalAdmission(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.acutesurgicaladmission = value;
	}
	public boolean getSurgerySignificantMobilityReductionIsNotNull()
	{
		return this.surgerysignificantmobilityreduction != null;
	}
	public ims.core.vo.lookups.YesNo getSurgerySignificantMobilityReduction()
	{
		return this.surgerysignificantmobilityreduction;
	}
	public void setSurgerySignificantMobilityReduction(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.surgerysignificantmobilityreduction = value;
	}
	public boolean getActiveBleedingIsNotNull()
	{
		return this.activebleeding != null;
	}
	public ims.core.vo.lookups.YesNo getActiveBleeding()
	{
		return this.activebleeding;
	}
	public void setActiveBleeding(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.activebleeding = value;
	}
	public boolean getAcquiredBleedingIsNotNull()
	{
		return this.acquiredbleeding != null;
	}
	public ims.core.vo.lookups.YesNo getAcquiredBleeding()
	{
		return this.acquiredbleeding;
	}
	public void setAcquiredBleeding(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.acquiredbleeding = value;
	}
	public boolean getConcurrentAnticoagulantsIsNotNull()
	{
		return this.concurrentanticoagulants != null;
	}
	public ims.core.vo.lookups.YesNo getConcurrentAnticoagulants()
	{
		return this.concurrentanticoagulants;
	}
	public void setConcurrentAnticoagulants(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.concurrentanticoagulants = value;
	}
	public boolean getUncontrolledHypertensionIsNotNull()
	{
		return this.uncontrolledhypertension != null;
	}
	public ims.core.vo.lookups.YesNo getUncontrolledHypertension()
	{
		return this.uncontrolledhypertension;
	}
	public void setUncontrolledHypertension(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.uncontrolledhypertension = value;
	}
	public boolean getThrombocytopeniaIsNotNull()
	{
		return this.thrombocytopenia != null;
	}
	public ims.core.vo.lookups.YesNo getThrombocytopenia()
	{
		return this.thrombocytopenia;
	}
	public void setThrombocytopenia(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.thrombocytopenia = value;
	}
	public boolean getAcuteStrokeIsNotNull()
	{
		return this.acutestroke != null;
	}
	public ims.core.vo.lookups.YesNo getAcuteStroke()
	{
		return this.acutestroke;
	}
	public void setAcuteStroke(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.acutestroke = value;
	}
	public boolean getUntreatedBleedingDisorderIsNotNull()
	{
		return this.untreatedbleedingdisorder != null;
	}
	public ims.core.vo.lookups.YesNo getUntreatedBleedingDisorder()
	{
		return this.untreatedbleedingdisorder;
	}
	public void setUntreatedBleedingDisorder(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.untreatedbleedingdisorder = value;
	}
	public boolean getNeuroSpinalEyeSurgeryIsNotNull()
	{
		return this.neurospinaleyesurgery != null;
	}
	public ims.core.vo.lookups.YesNo getNeuroSpinalEyeSurgery()
	{
		return this.neurospinaleyesurgery;
	}
	public void setNeuroSpinalEyeSurgery(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.neurospinaleyesurgery = value;
	}
	public boolean getOtherProcedureWithHighBleedingRiskIsNotNull()
	{
		return this.otherprocedurewithhighbleedingrisk != null;
	}
	public ims.core.vo.lookups.YesNo getOtherProcedureWithHighBleedingRisk()
	{
		return this.otherprocedurewithhighbleedingrisk;
	}
	public void setOtherProcedureWithHighBleedingRisk(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.otherprocedurewithhighbleedingrisk = value;
	}
	public boolean getLumbarPunctureWithinNext12hrsIsNotNull()
	{
		return this.lumbarpuncturewithinnext12hrs != null;
	}
	public ims.core.vo.lookups.YesNo getLumbarPunctureWithinNext12hrs()
	{
		return this.lumbarpuncturewithinnext12hrs;
	}
	public void setLumbarPunctureWithinNext12hrs(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.lumbarpuncturewithinnext12hrs = value;
	}
	public boolean getLumbarPuncturePrevious4hrsIsNotNull()
	{
		return this.lumbarpunctureprevious4hrs != null;
	}
	public ims.core.vo.lookups.YesNo getLumbarPuncturePrevious4hrs()
	{
		return this.lumbarpunctureprevious4hrs;
	}
	public void setLumbarPuncturePrevious4hrs(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.lumbarpunctureprevious4hrs = value;
	}
	public boolean getRiskGroupIsNotNull()
	{
		return this.riskgroup != null;
	}
	public ims.clinical.vo.lookups.VTERiskGroup getRiskGroup()
	{
		return this.riskgroup;
	}
	public void setRiskGroup(ims.clinical.vo.lookups.VTERiskGroup value)
	{
		this.isValidated = false;
		this.riskgroup = value;
	}
	public boolean getSurgeryLowerLimbPelvis60minsIsNotNull()
	{
		return this.surgerylowerlimbpelvis60mins != null;
	}
	public ims.core.vo.lookups.YesNo getSurgeryLowerLimbPelvis60mins()
	{
		return this.surgerylowerlimbpelvis60mins;
	}
	public void setSurgeryLowerLimbPelvis60mins(ims.core.vo.lookups.YesNo value)
	{
		this.isValidated = false;
		this.surgerylowerlimbpelvis60mins = value;
	}
	public boolean getProphylaxisOfferedIsNotNull()
	{
		return this.prophylaxisoffered != null;
	}
	public ims.clinical.vo.lookups.ProphylaxisOfferedCollection getProphylaxisOffered()
	{
		return this.prophylaxisoffered;
	}
	public void setProphylaxisOffered(ims.clinical.vo.lookups.ProphylaxisOfferedCollection value)
	{
		this.isValidated = false;
		this.prophylaxisoffered = value;
	}
	public boolean getCommentsIsNotNull()
	{
		return this.comments != null;
	}
	public String getComments()
	{
		return this.comments;
	}
	public static int getCommentsMaxLength()
	{
		return 250;
	}
	public void setComments(String value)
	{
		this.isValidated = false;
		this.comments = value;
	}
	public boolean getContextTypeIsNotNull()
	{
		return this.contexttype != null;
	}
	public ims.clinical.vo.lookups.VTEAssessmentContextType getContextType()
	{
		return this.contexttype;
	}
	public void setContextType(ims.clinical.vo.lookups.VTEAssessmentContextType value)
	{
		this.isValidated = false;
		this.contexttype = value;
	}
	public boolean getUsedIsNotNull()
	{
		return this.used != null;
	}
	public Boolean getUsed()
	{
		return this.used;
	}
	public void setUsed(Boolean value)
	{
		this.isValidated = false;
		this.used = value;
	}
	public boolean getDeclinedInformationIsNotNull()
	{
		return this.declinedinformation != null;
	}
	public ims.core.vo.AuthoringInformationVo getDeclinedInformation()
	{
		return this.declinedinformation;
	}
	public void setDeclinedInformation(ims.core.vo.AuthoringInformationVo value)
	{
		this.isValidated = false;
		this.declinedinformation = value;
	}
	public boolean getValidatedInformationIsNotNull()
	{
		return this.validatedinformation != null;
	}
	public ims.core.vo.AuthoringInformationVo getValidatedInformation()
	{
		return this.validatedinformation;
	}
	public void setValidatedInformation(ims.core.vo.AuthoringInformationVo value)
	{
		this.isValidated = false;
		this.validatedinformation = value;
	}
	public boolean getDeclinedReasonIsNotNull()
	{
		return this.declinedreason != null;
	}
	public ims.clinical.vo.lookups.VTEAssessmentStatusReason getDeclinedReason()
	{
		return this.declinedreason;
	}
	public void setDeclinedReason(ims.clinical.vo.lookups.VTEAssessmentStatusReason value)
	{
		this.isValidated = false;
		this.declinedreason = value;
	}
	public boolean isValidated()
	{
		if(this.isBusy)
			return true;
		this.isBusy = true;
	
		if(!this.isValidated)
		{
			this.isBusy = false;
			return false;
		}
		if(this.authoringinformation != null)
		{
			if(!this.authoringinformation.isValidated())
			{
				this.isBusy = false;
				return false;
			}
		}
		if(this.recordinginformation != null)
		{
			if(!this.recordinginformation.isValidated())
			{
				this.isBusy = false;
				return false;
			}
		}
		if(this.completedby != null)
		{
			if(!this.completedby.isValidated())
			{
				this.isBusy = false;
				return false;
			}
		}
		if(this.declinedinformation != null)
		{
			if(!this.declinedinformation.isValidated())
			{
				this.isBusy = false;
				return false;
			}
		}
		if(this.validatedinformation != null)
		{
			if(!this.validatedinformation.isValidated())
			{
				this.isBusy = false;
				return false;
			}
		}
		this.isBusy = false;
		return true;
	}
	public String[] validate()
	{
		return validate(null);
	}
	public String[] validate(String[] existingErrors)
	{
		if(this.isBusy)
			return null;
		this.isBusy = true;
	
		java.util.ArrayList<String> listOfErrors = new java.util.ArrayList<String>();
		if(existingErrors != null)
		{
			for(int x = 0; x < existingErrors.length; x++)
			{
				listOfErrors.add(existingErrors[x]);
			}
		}
		if(this.patient == null)
			listOfErrors.add("Patient is mandatory");
		if(this.authoringinformation == null)
			listOfErrors.add("AuthoringInformation is mandatory");
		if(this.authoringinformation != null)
		{
			String[] listOfOtherErrors = this.authoringinformation.validate();
			if(listOfOtherErrors != null)
			{
				for(int x = 0; x < listOfOtherErrors.length; x++)
				{
					listOfErrors.add(listOfOtherErrors[x]);
				}
			}
		}
		if(this.recordinginformation == null)
			listOfErrors.add("RecordingInformation is mandatory");
		if(this.recordinginformation != null)
		{
			String[] listOfOtherErrors = this.recordinginformation.validate();
			if(listOfOtherErrors != null)
			{
				for(int x = 0; x < listOfOtherErrors.length; x++)
				{
					listOfErrors.add(listOfOtherErrors[x]);
				}
			}
		}
		if(this.vteassessmentstatus == null)
			listOfErrors.add("VTEAssessmentStatus is mandatory");
		if(this.completedby != null)
		{
			String[] listOfOtherErrors = this.completedby.validate();
			if(listOfOtherErrors != null)
			{
				for(int x = 0; x < listOfOtherErrors.length; x++)
				{
					listOfErrors.add(listOfOtherErrors[x]);
				}
			}
		}
		if(this.notexpectedreducedmobility == null)
			listOfErrors.add("NotExpectedReducedMobility is mandatory");
		if(this.comments != null)
			if(this.comments.length() > 250)
				listOfErrors.add("The length of the field [comments] in the value object [ims.clinical.vo.VTERiskAssessmentVo] is too big. It should be less or equal to 250");
		if(this.declinedinformation != null)
		{
			String[] listOfOtherErrors = this.declinedinformation.validate();
			if(listOfOtherErrors != null)
			{
				for(int x = 0; x < listOfOtherErrors.length; x++)
				{
					listOfErrors.add(listOfOtherErrors[x]);
				}
			}
		}
		if(this.validatedinformation != null)
		{
			String[] listOfOtherErrors = this.validatedinformation.validate();
			if(listOfOtherErrors != null)
			{
				for(int x = 0; x < listOfOtherErrors.length; x++)
				{
					listOfErrors.add(listOfOtherErrors[x]);
				}
			}
		}
		int errorCount = listOfErrors.size();
		if(errorCount == 0)
		{
			this.isBusy = false;
			this.isValidated = true;
			return null;
		}
		String[] result = new String[errorCount];
		for(int x = 0; x < errorCount; x++)
			result[x] = (String)listOfErrors.get(x);
		this.isBusy = false;
		this.isValidated = false;
		return result;
	}
	public void clearIDAndVersion()
	{
		this.id = null;
		this.version = 0;
	}
	public Object clone()
	{
		if(this.isBusy)
			return this;
		this.isBusy = true;
	
		VTERiskAssessmentVo clone = new VTERiskAssessmentVo(this.id, this.version);
		
		if(this.patient == null)
			clone.patient = null;
		else
			clone.patient = (ims.core.vo.PatientShort)this.patient.clone();
		clone.carecontext = this.carecontext;
		if(this.authoringinformation == null)
			clone.authoringinformation = null;
		else
			clone.authoringinformation = (ims.core.vo.AuthoringInformationVo)this.authoringinformation.clone();
		if(this.recordinginformation == null)
			clone.recordinginformation = null;
		else
			clone.recordinginformation = (ims.core.vo.RecordingUserInformationVo)this.recordinginformation.clone();
		if(this.vteassessmentstatus == null)
			clone.vteassessmentstatus = null;
		else
			clone.vteassessmentstatus = (ims.clinical.vo.lookups.VTEAsessmentStatus)this.vteassessmentstatus.clone();
		if(this.completedby == null)
			clone.completedby = null;
		else
			clone.completedby = (ims.core.vo.RecordingUserInformationVo)this.completedby.clone();
		if(this.notexpectedreducedmobility == null)
			clone.notexpectedreducedmobility = null;
		else
			clone.notexpectedreducedmobility = (ims.core.vo.lookups.YesNo)this.notexpectedreducedmobility.clone();
		if(this.activecancer == null)
			clone.activecancer = null;
		else
			clone.activecancer = (ims.core.vo.lookups.YesNo)this.activecancer.clone();
		if(this.ageoversixty == null)
			clone.ageoversixty = null;
		else
			clone.ageoversixty = (ims.core.vo.lookups.YesNo)this.ageoversixty.clone();
		if(this.dehydration == null)
			clone.dehydration = null;
		else
			clone.dehydration = (ims.core.vo.lookups.YesNo)this.dehydration.clone();
		if(this.knownthrombophilias == null)
			clone.knownthrombophilias = null;
		else
			clone.knownthrombophilias = (ims.core.vo.lookups.YesNo)this.knownthrombophilias.clone();
		if(this.obesity == null)
			clone.obesity = null;
		else
			clone.obesity = (ims.core.vo.lookups.YesNo)this.obesity.clone();
		if(this.significantmorbidities == null)
			clone.significantmorbidities = null;
		else
			clone.significantmorbidities = (ims.core.vo.lookups.YesNo)this.significantmorbidities.clone();
		if(this.historyofvte == null)
			clone.historyofvte = null;
		else
			clone.historyofvte = (ims.core.vo.lookups.YesNo)this.historyofvte.clone();
		if(this.useofhrt == null)
			clone.useofhrt = null;
		else
			clone.useofhrt = (ims.core.vo.lookups.YesNo)this.useofhrt.clone();
		if(this.useofostogren == null)
			clone.useofostogren = null;
		else
			clone.useofostogren = (ims.core.vo.lookups.YesNo)this.useofostogren.clone();
		if(this.varicoseveins == null)
			clone.varicoseveins = null;
		else
			clone.varicoseveins = (ims.core.vo.lookups.YesNo)this.varicoseveins.clone();
		if(this.pregnancy == null)
			clone.pregnancy = null;
		else
			clone.pregnancy = (ims.core.vo.lookups.YesNo)this.pregnancy.clone();
		if(this.reducedmobility == null)
			clone.reducedmobility = null;
		else
			clone.reducedmobility = (ims.core.vo.lookups.YesNo)this.reducedmobility.clone();
		if(this.criticalcareadmission == null)
			clone.criticalcareadmission = null;
		else
			clone.criticalcareadmission = (ims.core.vo.lookups.YesNo)this.criticalcareadmission.clone();
		if(this.hipkneereplacement == null)
			clone.hipkneereplacement = null;
		else
			clone.hipkneereplacement = (ims.core.vo.lookups.YesNo)this.hipkneereplacement.clone();
		if(this.hipfracture == null)
			clone.hipfracture = null;
		else
			clone.hipfracture = (ims.core.vo.lookups.YesNo)this.hipfracture.clone();
		if(this.anaestheticandsurgery == null)
			clone.anaestheticandsurgery = null;
		else
			clone.anaestheticandsurgery = (ims.core.vo.lookups.YesNo)this.anaestheticandsurgery.clone();
		if(this.acutesurgicaladmission == null)
			clone.acutesurgicaladmission = null;
		else
			clone.acutesurgicaladmission = (ims.core.vo.lookups.YesNo)this.acutesurgicaladmission.clone();
		if(this.surgerysignificantmobilityreduction == null)
			clone.surgerysignificantmobilityreduction = null;
		else
			clone.surgerysignificantmobilityreduction = (ims.core.vo.lookups.YesNo)this.surgerysignificantmobilityreduction.clone();
		if(this.activebleeding == null)
			clone.activebleeding = null;
		else
			clone.activebleeding = (ims.core.vo.lookups.YesNo)this.activebleeding.clone();
		if(this.acquiredbleeding == null)
			clone.acquiredbleeding = null;
		else
			clone.acquiredbleeding = (ims.core.vo.lookups.YesNo)this.acquiredbleeding.clone();
		if(this.concurrentanticoagulants == null)
			clone.concurrentanticoagulants = null;
		else
			clone.concurrentanticoagulants = (ims.core.vo.lookups.YesNo)this.concurrentanticoagulants.clone();
		if(this.uncontrolledhypertension == null)
			clone.uncontrolledhypertension = null;
		else
			clone.uncontrolledhypertension = (ims.core.vo.lookups.YesNo)this.uncontrolledhypertension.clone();
		if(this.thrombocytopenia == null)
			clone.thrombocytopenia = null;
		else
			clone.thrombocytopenia = (ims.core.vo.lookups.YesNo)this.thrombocytopenia.clone();
		if(this.acutestroke == null)
			clone.acutestroke = null;
		else
			clone.acutestroke = (ims.core.vo.lookups.YesNo)this.acutestroke.clone();
		if(this.untreatedbleedingdisorder == null)
			clone.untreatedbleedingdisorder = null;
		else
			clone.untreatedbleedingdisorder = (ims.core.vo.lookups.YesNo)this.untreatedbleedingdisorder.clone();
		if(this.neurospinaleyesurgery == null)
			clone.neurospinaleyesurgery = null;
		else
			clone.neurospinaleyesurgery = (ims.core.vo.lookups.YesNo)this.neurospinaleyesurgery.clone();
		if(this.otherprocedurewithhighbleedingrisk == null)
			clone.otherprocedurewithhighbleedingrisk = null;
		else
			clone.otherprocedurewithhighbleedingrisk = (ims.core.vo.lookups.YesNo)this.otherprocedurewithhighbleedingrisk.clone();
		if(this.lumbarpuncturewithinnext12hrs == null)
			clone.lumbarpuncturewithinnext12hrs = null;
		else
			clone.lumbarpuncturewithinnext12hrs = (ims.core.vo.lookups.YesNo)this.lumbarpuncturewithinnext12hrs.clone();
		if(this.lumbarpunctureprevious4hrs == null)
			clone.lumbarpunctureprevious4hrs = null;
		else
			clone.lumbarpunctureprevious4hrs = (ims.core.vo.lookups.YesNo)this.lumbarpunctureprevious4hrs.clone();
		if(this.riskgroup == null)
			clone.riskgroup = null;
		else
			clone.riskgroup = (ims.clinical.vo.lookups.VTERiskGroup)this.riskgroup.clone();
		if(this.surgerylowerlimbpelvis60mins == null)
			clone.surgerylowerlimbpelvis60mins = null;
		else
			clone.surgerylowerlimbpelvis60mins = (ims.core.vo.lookups.YesNo)this.surgerylowerlimbpelvis60mins.clone();
		if(this.prophylaxisoffered == null)
			clone.prophylaxisoffered = null;
		else
			clone.prophylaxisoffered = (ims.clinical.vo.lookups.ProphylaxisOfferedCollection)this.prophylaxisoffered.clone();
		clone.comments = this.comments;
		if(this.contexttype == null)
			clone.contexttype = null;
		else
			clone.contexttype = (ims.clinical.vo.lookups.VTEAssessmentContextType)this.contexttype.clone();
		clone.used = this.used;
		if(this.declinedinformation == null)
			clone.declinedinformation = null;
		else
			clone.declinedinformation = (ims.core.vo.AuthoringInformationVo)this.declinedinformation.clone();
		if(this.validatedinformation == null)
			clone.validatedinformation = null;
		else
			clone.validatedinformation = (ims.core.vo.AuthoringInformationVo)this.validatedinformation.clone();
		if(this.declinedreason == null)
			clone.declinedreason = null;
		else
			clone.declinedreason = (ims.clinical.vo.lookups.VTEAssessmentStatusReason)this.declinedreason.clone();
		clone.isValidated = this.isValidated;
		
		this.isBusy = false;
		return clone;
	}
	public int compareTo(Object obj)
	{
		return compareTo(obj, true);
	}
	public int compareTo(Object obj, boolean caseInsensitive)
	{
		if (obj == null)
		{
			return -1;
		}
		if(caseInsensitive); // this is to avoid eclipse warning only.
		if (!(VTERiskAssessmentVo.class.isAssignableFrom(obj.getClass())))
		{
			throw new ClassCastException("A VTERiskAssessmentVo object cannot be compared an Object of type " + obj.getClass().getName());
		}
		if (this.id == null)
			return 1;
		if (((VTERiskAssessmentVo)obj).getBoId() == null)
			return -1;
		return this.id.compareTo(((VTERiskAssessmentVo)obj).getBoId());
	}
	public synchronized static int generateValueObjectUniqueID()
	{
		return ims.vo.ValueObject.generateUniqueID();
	}
	public int countFieldsWithValue()
	{
		int count = 0;
		if(this.patient != null)
			count++;
		if(this.carecontext != null)
			count++;
		if(this.authoringinformation != null)
			count++;
		if(this.recordinginformation != null)
			count++;
		if(this.vteassessmentstatus != null)
			count++;
		if(this.completedby != null)
			count++;
		if(this.notexpectedreducedmobility != null)
			count++;
		if(this.activecancer != null)
			count++;
		if(this.ageoversixty != null)
			count++;
		if(this.dehydration != null)
			count++;
		if(this.knownthrombophilias != null)
			count++;
		if(this.obesity != null)
			count++;
		if(this.significantmorbidities != null)
			count++;
		if(this.historyofvte != null)
			count++;
		if(this.useofhrt != null)
			count++;
		if(this.useofostogren != null)
			count++;
		if(this.varicoseveins != null)
			count++;
		if(this.pregnancy != null)
			count++;
		if(this.reducedmobility != null)
			count++;
		if(this.criticalcareadmission != null)
			count++;
		if(this.hipkneereplacement != null)
			count++;
		if(this.hipfracture != null)
			count++;
		if(this.anaestheticandsurgery != null)
			count++;
		if(this.acutesurgicaladmission != null)
			count++;
		if(this.surgerysignificantmobilityreduction != null)
			count++;
		if(this.activebleeding != null)
			count++;
		if(this.acquiredbleeding != null)
			count++;
		if(this.concurrentanticoagulants != null)
			count++;
		if(this.uncontrolledhypertension != null)
			count++;
		if(this.thrombocytopenia != null)
			count++;
		if(this.acutestroke != null)
			count++;
		if(this.untreatedbleedingdisorder != null)
			count++;
		if(this.neurospinaleyesurgery != null)
			count++;
		if(this.otherprocedurewithhighbleedingrisk != null)
			count++;
		if(this.lumbarpuncturewithinnext12hrs != null)
			count++;
		if(this.lumbarpunctureprevious4hrs != null)
			count++;
		if(this.riskgroup != null)
			count++;
		if(this.surgerylowerlimbpelvis60mins != null)
			count++;
		if(this.prophylaxisoffered != null)
			count++;
		if(this.comments != null)
			count++;
		if(this.contexttype != null)
			count++;
		if(this.used != null)
			count++;
		if(this.declinedinformation != null)
			count++;
		if(this.validatedinformation != null)
			count++;
		if(this.declinedreason != null)
			count++;
		return count;
	}
	public int countValueObjectFields()
	{
		return 45;
	}
	protected ims.core.vo.PatientShort patient;
	protected ims.core.admin.vo.CareContextRefVo carecontext;
	protected ims.core.vo.AuthoringInformationVo authoringinformation;
	protected ims.core.vo.RecordingUserInformationVo recordinginformation;
	protected ims.clinical.vo.lookups.VTEAsessmentStatus vteassessmentstatus;
	protected ims.core.vo.RecordingUserInformationVo completedby;
	protected ims.core.vo.lookups.YesNo notexpectedreducedmobility;
	protected ims.core.vo.lookups.YesNo activecancer;
	protected ims.core.vo.lookups.YesNo ageoversixty;
	protected ims.core.vo.lookups.YesNo dehydration;
	protected ims.core.vo.lookups.YesNo knownthrombophilias;
	protected ims.core.vo.lookups.YesNo obesity;
	protected ims.core.vo.lookups.YesNo significantmorbidities;
	protected ims.core.vo.lookups.YesNo historyofvte;
	protected ims.core.vo.lookups.YesNo useofhrt;
	protected ims.core.vo.lookups.YesNo useofostogren;
	protected ims.core.vo.lookups.YesNo varicoseveins;
	protected ims.core.vo.lookups.YesNo pregnancy;
	protected ims.core.vo.lookups.YesNo reducedmobility;
	protected ims.core.vo.lookups.YesNo criticalcareadmission;
	protected ims.core.vo.lookups.YesNo hipkneereplacement;
	protected ims.core.vo.lookups.YesNo hipfracture;
	protected ims.core.vo.lookups.YesNo anaestheticandsurgery;
	protected ims.core.vo.lookups.YesNo acutesurgicaladmission;
	protected ims.core.vo.lookups.YesNo surgerysignificantmobilityreduction;
	protected ims.core.vo.lookups.YesNo activebleeding;
	protected ims.core.vo.lookups.YesNo acquiredbleeding;
	protected ims.core.vo.lookups.YesNo concurrentanticoagulants;
	protected ims.core.vo.lookups.YesNo uncontrolledhypertension;
	protected ims.core.vo.lookups.YesNo thrombocytopenia;
	protected ims.core.vo.lookups.YesNo acutestroke;
	protected ims.core.vo.lookups.YesNo untreatedbleedingdisorder;
	protected ims.core.vo.lookups.YesNo neurospinaleyesurgery;
	protected ims.core.vo.lookups.YesNo otherprocedurewithhighbleedingrisk;
	protected ims.core.vo.lookups.YesNo lumbarpuncturewithinnext12hrs;
	protected ims.core.vo.lookups.YesNo lumbarpunctureprevious4hrs;
	protected ims.clinical.vo.lookups.VTERiskGroup riskgroup;
	protected ims.core.vo.lookups.YesNo surgerylowerlimbpelvis60mins;
	protected ims.clinical.vo.lookups.ProphylaxisOfferedCollection prophylaxisoffered;
	protected String comments;
	protected ims.clinical.vo.lookups.VTEAssessmentContextType contexttype;
	protected Boolean used;
	protected ims.core.vo.AuthoringInformationVo declinedinformation;
	protected ims.core.vo.AuthoringInformationVo validatedinformation;
	protected ims.clinical.vo.lookups.VTEAssessmentStatusReason declinedreason;
	private boolean isValidated = false;
	private boolean isBusy = false;
}
