
ca.uhn.fhir.model.dstu.resource.MedicationPrescription Maven / Gradle / Ivy
package ca.uhn.fhir.model.dstu.resource;
import java.util.*;
import ca.uhn.fhir.model.api.*;
import ca.uhn.fhir.model.api.annotation.*;
import ca.uhn.fhir.rest.gclient.*;
import ca.uhn.fhir.model.dstu.composite.AddressDt;
import ca.uhn.fhir.model.dstu.valueset.AdministrativeGenderCodesEnum;
import ca.uhn.fhir.model.dstu.valueset.AdmitSourceEnum;
import ca.uhn.fhir.model.dstu.resource.AdverseReaction;
import ca.uhn.fhir.model.dstu.valueset.AggregationModeEnum;
import ca.uhn.fhir.model.dstu.valueset.AlertStatusEnum;
import ca.uhn.fhir.model.dstu.resource.AllergyIntolerance;
import ca.uhn.fhir.model.dstu.valueset.AnimalSpeciesEnum;
import ca.uhn.fhir.model.dstu.resource.Appointment;
import ca.uhn.fhir.model.dstu.composite.AttachmentDt;
import ca.uhn.fhir.model.dstu.resource.Availability;
import ca.uhn.fhir.model.dstu.valueset.BindingConformanceEnum;
import ca.uhn.fhir.model.dstu.resource.CarePlan;
import ca.uhn.fhir.model.dstu.valueset.CarePlanActivityCategoryEnum;
import ca.uhn.fhir.model.dstu.valueset.CarePlanActivityStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.CarePlanGoalStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.CarePlanStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.CausalityExpectationEnum;
import ca.uhn.fhir.model.dstu.composite.CodeableConceptDt;
import ca.uhn.fhir.model.dstu.composite.CodingDt;
import ca.uhn.fhir.model.dstu.valueset.CompositionAttestationModeEnum;
import ca.uhn.fhir.model.dstu.valueset.CompositionStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.ConceptMapEquivalenceEnum;
import ca.uhn.fhir.model.dstu.resource.Condition;
import ca.uhn.fhir.model.dstu.valueset.ConditionRelationshipTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ConditionStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.ConformanceEventModeEnum;
import ca.uhn.fhir.model.dstu.valueset.ConformanceStatementStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.ConstraintSeverityEnum;
import ca.uhn.fhir.model.dstu.composite.ContactDt;
import ca.uhn.fhir.model.dstu.valueset.ContactUseEnum;
import ca.uhn.fhir.model.dstu.valueset.CriticalityEnum;
import ca.uhn.fhir.model.dstu.valueset.DataTypeEnum;
import ca.uhn.fhir.model.dstu.resource.Device;
import ca.uhn.fhir.model.dstu.resource.DeviceObservationReport;
import ca.uhn.fhir.model.dstu.resource.DiagnosticOrder;
import ca.uhn.fhir.model.dstu.valueset.DiagnosticOrderPriorityEnum;
import ca.uhn.fhir.model.dstu.valueset.DiagnosticOrderStatusEnum;
import ca.uhn.fhir.model.dstu.resource.DiagnosticReport;
import ca.uhn.fhir.model.dstu.valueset.DiagnosticReportStatusEnum;
import ca.uhn.fhir.model.dstu.resource.DocumentManifest;
import ca.uhn.fhir.model.dstu.valueset.DocumentModeEnum;
import ca.uhn.fhir.model.dstu.resource.DocumentReference;
import ca.uhn.fhir.model.dstu.valueset.DocumentReferenceStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.DocumentRelationshipTypeEnum;
import ca.uhn.fhir.model.dstu.resource.Encounter;
import ca.uhn.fhir.model.dstu.valueset.EncounterClassEnum;
import ca.uhn.fhir.model.dstu.valueset.EncounterStateEnum;
import ca.uhn.fhir.model.dstu.valueset.EncounterTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ExposureTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ExtensionContextEnum;
import ca.uhn.fhir.model.dstu.valueset.FHIRDefinedTypeEnum;
import ca.uhn.fhir.model.dstu.resource.FamilyHistory;
import ca.uhn.fhir.model.dstu.valueset.FilterOperatorEnum;
import ca.uhn.fhir.model.dstu.resource.GVFMeta;
import ca.uhn.fhir.model.dstu.resource.Group;
import ca.uhn.fhir.model.dstu.valueset.GroupTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.HierarchicalRelationshipTypeEnum;
import ca.uhn.fhir.model.dstu.composite.HumanNameDt;
import ca.uhn.fhir.model.dstu.composite.IdentifierDt;
import ca.uhn.fhir.model.dstu.valueset.IdentifierUseEnum;
import ca.uhn.fhir.model.dstu.valueset.ImagingModalityEnum;
import ca.uhn.fhir.model.dstu.resource.ImagingStudy;
import ca.uhn.fhir.model.dstu.resource.Immunization;
import ca.uhn.fhir.model.dstu.valueset.ImmunizationReasonCodesEnum;
import ca.uhn.fhir.model.dstu.resource.ImmunizationRecommendation;
import ca.uhn.fhir.model.dstu.valueset.ImmunizationRecommendationDateCriterionCodesEnum;
import ca.uhn.fhir.model.dstu.valueset.ImmunizationRecommendationStatusCodesEnum;
import ca.uhn.fhir.model.dstu.valueset.ImmunizationRouteCodesEnum;
import ca.uhn.fhir.model.dstu.valueset.InstanceAvailabilityEnum;
import ca.uhn.fhir.model.dstu.valueset.IssueSeverityEnum;
import ca.uhn.fhir.model.dstu.valueset.IssueTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.LinkTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ListModeEnum;
import ca.uhn.fhir.model.dstu.resource.Location;
import ca.uhn.fhir.model.dstu.valueset.LocationModeEnum;
import ca.uhn.fhir.model.dstu.valueset.LocationStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.LocationTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.MaritalStatusCodesEnum;
import ca.uhn.fhir.model.dstu.resource.Media;
import ca.uhn.fhir.model.dstu.valueset.MediaTypeEnum;
import ca.uhn.fhir.model.dstu.resource.Medication;
import ca.uhn.fhir.model.dstu.resource.MedicationAdministration;
import ca.uhn.fhir.model.dstu.valueset.MedicationAdministrationStatusEnum;
import ca.uhn.fhir.model.dstu.resource.MedicationDispense;
import ca.uhn.fhir.model.dstu.valueset.MedicationDispenseStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.MedicationKindEnum;
import ca.uhn.fhir.model.dstu.resource.MedicationPrescription;
import ca.uhn.fhir.model.dstu.valueset.MedicationPrescriptionStatusEnum;
import ca.uhn.fhir.model.dstu.resource.MedicationStatement;
import ca.uhn.fhir.model.dstu.valueset.MessageEventEnum;
import ca.uhn.fhir.model.dstu.valueset.MessageSignificanceCategoryEnum;
import ca.uhn.fhir.model.dstu.valueset.MessageTransportEnum;
import ca.uhn.fhir.model.dstu.resource.Microarray;
import ca.uhn.fhir.model.dstu.valueset.ModalityEnum;
import ca.uhn.fhir.model.dstu.resource.Observation;
import ca.uhn.fhir.model.dstu.valueset.ObservationRelationshipTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ObservationReliabilityEnum;
import ca.uhn.fhir.model.dstu.valueset.ObservationStatusEnum;
import ca.uhn.fhir.model.dstu.resource.OperationOutcome;
import ca.uhn.fhir.model.dstu.resource.Order;
import ca.uhn.fhir.model.dstu.valueset.OrderOutcomeStatusEnum;
import ca.uhn.fhir.model.dstu.resource.Organization;
import ca.uhn.fhir.model.dstu.valueset.OrganizationTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ParticipantTypeEnum;
import ca.uhn.fhir.model.dstu.resource.Patient;
import ca.uhn.fhir.model.dstu.composite.PeriodDt;
import ca.uhn.fhir.model.dstu.resource.Practitioner;
import ca.uhn.fhir.model.dstu.valueset.PractitionerRoleEnum;
import ca.uhn.fhir.model.dstu.valueset.PractitionerSpecialtyEnum;
import ca.uhn.fhir.model.dstu.resource.Procedure;
import ca.uhn.fhir.model.dstu.valueset.ProcedureRelationshipTypeEnum;
import ca.uhn.fhir.model.dstu.resource.Profile;
import ca.uhn.fhir.model.dstu.valueset.PropertyRepresentationEnum;
import ca.uhn.fhir.model.dstu.valueset.ProvenanceEntityRoleEnum;
import ca.uhn.fhir.model.dstu.valueset.QuantityCompararatorEnum;
import ca.uhn.fhir.model.dstu.composite.QuantityDt;
import ca.uhn.fhir.model.dstu.valueset.QueryOutcomeEnum;
import ca.uhn.fhir.model.dstu.valueset.QuestionnaireGroupNameEnum;
import ca.uhn.fhir.model.dstu.valueset.QuestionnaireNameEnum;
import ca.uhn.fhir.model.dstu.valueset.QuestionnaireStatusEnum;
import ca.uhn.fhir.model.dstu.composite.RangeDt;
import ca.uhn.fhir.model.dstu.composite.RatioDt;
import ca.uhn.fhir.model.dstu.valueset.ReactionSeverityEnum;
import ca.uhn.fhir.model.dstu.resource.RelatedPerson;
import ca.uhn.fhir.model.dstu.valueset.ResourceProfileStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.ResourceTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.ResponseTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.RestfulConformanceModeEnum;
import ca.uhn.fhir.model.dstu.valueset.RestfulOperationSystemEnum;
import ca.uhn.fhir.model.dstu.valueset.RestfulOperationTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.RestfulSecurityServiceEnum;
import ca.uhn.fhir.model.dstu.composite.SampledDataDt;
import ca.uhn.fhir.model.dstu.composite.ScheduleDt;
import ca.uhn.fhir.model.dstu.valueset.SearchParamTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventActionEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventObjectLifecycleEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventObjectRoleEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventObjectTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventOutcomeEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventParticipantNetworkTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.SecurityEventSourceTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.SensitivityStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.SensitivityTypeEnum;
import ca.uhn.fhir.model.dstu.resource.SequencingAnalysis;
import ca.uhn.fhir.model.dstu.resource.SequencingLab;
import ca.uhn.fhir.model.dstu.valueset.SlicingRulesEnum;
import ca.uhn.fhir.model.dstu.resource.Slot;
import ca.uhn.fhir.model.dstu.resource.Specimen;
import ca.uhn.fhir.model.dstu.valueset.SpecimenCollectionMethodEnum;
import ca.uhn.fhir.model.dstu.resource.Substance;
import ca.uhn.fhir.model.dstu.valueset.SupplyDispenseStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.SupplyItemTypeEnum;
import ca.uhn.fhir.model.dstu.valueset.SupplyStatusEnum;
import ca.uhn.fhir.model.dstu.valueset.SupplyTypeEnum;
import ca.uhn.fhir.model.api.TemporalPrecisionEnum;
import ca.uhn.fhir.model.dstu.resource.ValueSet;
import ca.uhn.fhir.model.dstu.valueset.ValueSetStatusEnum;
import ca.uhn.fhir.model.api.ExtensionDt;
import ca.uhn.fhir.model.api.IResource;
import ca.uhn.fhir.model.dstu.composite.AgeDt;
import ca.uhn.fhir.model.dstu.composite.DurationDt;
import ca.uhn.fhir.model.dstu.composite.ResourceReferenceDt;
import ca.uhn.fhir.model.dstu.resource.Binary;
import ca.uhn.fhir.model.primitive.Base64BinaryDt;
import ca.uhn.fhir.model.primitive.BooleanDt;
import ca.uhn.fhir.model.primitive.BoundCodeDt;
import ca.uhn.fhir.model.primitive.BoundCodeableConceptDt;
import ca.uhn.fhir.model.primitive.CodeDt;
import ca.uhn.fhir.model.primitive.DateDt;
import ca.uhn.fhir.model.primitive.DateTimeDt;
import ca.uhn.fhir.model.primitive.DecimalDt;
import ca.uhn.fhir.model.primitive.IdDt;
import ca.uhn.fhir.model.primitive.IdrefDt;
import ca.uhn.fhir.model.primitive.InstantDt;
import ca.uhn.fhir.model.primitive.IntegerDt;
import ca.uhn.fhir.model.primitive.OidDt;
import ca.uhn.fhir.model.primitive.StringDt;
import ca.uhn.fhir.model.primitive.UriDt;
/**
* HAPI/FHIR MedicationPrescription Resource
* (Prescription of medication to for patient)
*
*
* Definition:
* An order for both supply of the medication and the instructions for administration of the medicine to a patient.
*
*
*
* Requirements:
*
*
*
*
* Profile Definition:
* http://hl7.org/fhir/profiles/MedicationPrescription
*
*
*/
@ResourceDef(name="MedicationPrescription", profile="http://hl7.org/fhir/profiles/MedicationPrescription", id="medicationprescription")
public class MedicationPrescription extends ca.uhn.fhir.model.dstu.resource.BaseResource
implements IResource {
/**
* Search parameter constant for datewritten
*
* Description: Return prescriptions written on this date
* Type: date
* Path: MedicationPrescription.dateWritten
*
*/
@SearchParamDefinition(name="datewritten", path="MedicationPrescription.dateWritten", description="Return prescriptions written on this date", type="date" )
public static final String SP_DATEWRITTEN = "datewritten";
/**
* Fluent Client search parameter constant for datewritten
*
* Description: Return prescriptions written on this date
* Type: date
* Path: MedicationPrescription.dateWritten
*
*/
public static final DateClientParam DATEWRITTEN = new DateClientParam(SP_DATEWRITTEN);
/**
* Search parameter constant for encounter
*
* Description: Return prescriptions with this encounter identity
* Type: reference
* Path: MedicationPrescription.encounter
*
*/
@SearchParamDefinition(name="encounter", path="MedicationPrescription.encounter", description="Return prescriptions with this encounter identity", type="reference" )
public static final String SP_ENCOUNTER = "encounter";
/**
* Fluent Client search parameter constant for encounter
*
* Description: Return prescriptions with this encounter identity
* Type: reference
* Path: MedicationPrescription.encounter
*
*/
public static final ReferenceClientParam ENCOUNTER = new ReferenceClientParam(SP_ENCOUNTER);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "MedicationPrescription.encounter".
*/
public static final Include INCLUDE_ENCOUNTER = new Include("MedicationPrescription.encounter");
/**
* Search parameter constant for identifier
*
* Description: Return prescriptions with this external identity
* Type: token
* Path: MedicationPrescription.identifier
*
*/
@SearchParamDefinition(name="identifier", path="MedicationPrescription.identifier", description="Return prescriptions with this external identity", type="token" )
public static final String SP_IDENTIFIER = "identifier";
/**
* Fluent Client search parameter constant for identifier
*
* Description: Return prescriptions with this external identity
* Type: token
* Path: MedicationPrescription.identifier
*
*/
public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER);
/**
* Search parameter constant for medication
*
* Description: Code for medicine or text in medicine name
* Type: reference
* Path: MedicationPrescription.medication
*
*/
@SearchParamDefinition(name="medication", path="MedicationPrescription.medication", description="Code for medicine or text in medicine name", type="reference" )
public static final String SP_MEDICATION = "medication";
/**
* Fluent Client search parameter constant for medication
*
* Description: Code for medicine or text in medicine name
* Type: reference
* Path: MedicationPrescription.medication
*
*/
public static final ReferenceClientParam MEDICATION = new ReferenceClientParam(SP_MEDICATION);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "MedicationPrescription.medication".
*/
public static final Include INCLUDE_MEDICATION = new Include("MedicationPrescription.medication");
/**
* Search parameter constant for patient
*
* Description: The identity of a patient to list dispenses for
* Type: reference
* Path: MedicationPrescription.patient
*
*/
@SearchParamDefinition(name="patient", path="MedicationPrescription.patient", description="The identity of a patient to list dispenses for", type="reference" )
public static final String SP_PATIENT = "patient";
/**
* Fluent Client search parameter constant for patient
*
* Description: The identity of a patient to list dispenses for
* Type: reference
* Path: MedicationPrescription.patient
*
*/
public static final ReferenceClientParam PATIENT = new ReferenceClientParam(SP_PATIENT);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "MedicationPrescription.patient".
*/
public static final Include INCLUDE_PATIENT = new Include("MedicationPrescription.patient");
/**
* Search parameter constant for status
*
* Description: Status of the prescription
* Type: token
* Path: MedicationPrescription.status
*
*/
@SearchParamDefinition(name="status", path="MedicationPrescription.status", description="Status of the prescription", type="token" )
public static final String SP_STATUS = "status";
/**
* Fluent Client search parameter constant for status
*
* Description: Status of the prescription
* Type: token
* Path: MedicationPrescription.status
*
*/
public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS);
@Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false)
@Description(
shortDefinition="External identifier",
formalDefinition="External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system."
)
private java.util.List myIdentifier;
@Child(name="dateWritten", type=DateTimeDt.class, order=1, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="When prescription was authorized",
formalDefinition="The date (and perhaps time) when the prescription was written"
)
private DateTimeDt myDateWritten;
@Child(name="status", type=CodeDt.class, order=2, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="active | on hold | completed | entered in error | stopped | superceded",
formalDefinition="A code specifying the state of the order. Generally this will be active or completed state"
)
private BoundCodeDt myStatus;
@Child(name="patient", order=3, min=0, max=1, summary=false, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Patient.class })
@Description(
shortDefinition="Who prescription is for",
formalDefinition="A link to a resource representing the person to whom the medication will be given."
)
private ResourceReferenceDt myPatient;
@Child(name="prescriber", order=4, min=0, max=1, summary=false, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Practitioner.class })
@Description(
shortDefinition="Who ordered the medication(s)",
formalDefinition="The healthcare professional responsible for authorizing the prescription"
)
private ResourceReferenceDt myPrescriber;
@Child(name="encounter", order=5, min=0, max=1, summary=false, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Encounter.class })
@Description(
shortDefinition="Created during encounter / admission / stay",
formalDefinition="A link to a resource that identifies the particular occurrence of contact between patient and health care provider."
)
private ResourceReferenceDt myEncounter;
@Child(name="reason", order=6, min=0, max=1, summary=false, modifier=false, type={
CodeableConceptDt.class, Condition.class })
@Description(
shortDefinition="Reason or indication for writing the prescription",
formalDefinition="Can be the reason or the indication for writing the prescription."
)
private IDatatype myReason;
@Child(name="medication", order=7, min=0, max=1, summary=false, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Medication.class })
@Description(
shortDefinition="Medication to be taken",
formalDefinition="Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications."
)
private ResourceReferenceDt myMedication;
@Child(name="dosageInstruction", order=8, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false)
@Description(
shortDefinition="How medication should be taken",
formalDefinition="Indicates how the medication is to be used by the patient"
)
private java.util.List myDosageInstruction;
@Child(name="dispense", order=9, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Medication supply authorization",
formalDefinition="Deals with details of the dispense part of the order"
)
private Dispense myDispense;
@Child(name="substitution", order=10, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Any restrictions on medication substitution?",
formalDefinition="Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done."
)
private Substitution mySubstitution;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myDateWritten, myStatus, myPatient, myPrescriber, myEncounter, myReason, myMedication, myDosageInstruction, myDispense, mySubstitution);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myDateWritten, myStatus, myPatient, myPrescriber, myEncounter, myReason, myMedication, myDosageInstruction, myDispense, mySubstitution);
}
/**
* Gets the value(s) for identifier (External identifier).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*/
public java.util.List getIdentifier() {
if (myIdentifier == null) {
myIdentifier = new java.util.ArrayList();
}
return myIdentifier;
}
/**
* Gets the value(s) for identifier (External identifier).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*/
public java.util.List getIdentifierElement() {
if (myIdentifier == null) {
myIdentifier = new java.util.ArrayList();
}
return myIdentifier;
}
/**
* Sets the value(s) for identifier (External identifier)
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*/
public MedicationPrescription setIdentifier(java.util.List theValue) {
myIdentifier = theValue;
return this;
}
/**
* Adds and returns a new value for identifier (External identifier)
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*/
public IdentifierDt addIdentifier() {
IdentifierDt newType = new IdentifierDt();
getIdentifier().add(newType);
return newType;
}
/**
* Gets the first repetition for identifier (External identifier),
* creating it if it does not already exist.
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*/
public IdentifierDt getIdentifierFirstRep() {
if (getIdentifier().isEmpty()) {
return addIdentifier();
}
return getIdentifier().get(0);
}
/**
* Adds a new value for identifier (External identifier)
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*
* @return Returns a reference to this object, to allow for simple chaining.
*/
public MedicationPrescription addIdentifier( IdentifierUseEnum theUse, String theSystem, String theValue, String theLabel) {
if (myIdentifier == null) {
myIdentifier = new java.util.ArrayList();
}
myIdentifier.add(new IdentifierDt(theUse, theSystem, theValue, theLabel));
return this;
}
/**
* Adds a new value for identifier (External identifier)
*
*
* Definition:
* External identifier - one that would be used by another non-FHIR system - for example a re-imbursement system might issue its own id for each prescription that is created. This is particularly important where FHIR only provides part of an erntire workflow process where records have to be tracked through an entire system.
*
*
* @return Returns a reference to this object, to allow for simple chaining.
*/
public MedicationPrescription addIdentifier( String theSystem, String theValue) {
if (myIdentifier == null) {
myIdentifier = new java.util.ArrayList();
}
myIdentifier.add(new IdentifierDt(theSystem, theValue));
return this;
}
/**
* Gets the value(s) for dateWritten (When prescription was authorized).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The date (and perhaps time) when the prescription was written
*
*/
public DateTimeDt getDateWritten() {
if (myDateWritten == null) {
myDateWritten = new DateTimeDt();
}
return myDateWritten;
}
/**
* Gets the value(s) for dateWritten (When prescription was authorized).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The date (and perhaps time) when the prescription was written
*
*/
public DateTimeDt getDateWrittenElement() {
if (myDateWritten == null) {
myDateWritten = new DateTimeDt();
}
return myDateWritten;
}
/**
* Sets the value(s) for dateWritten (When prescription was authorized)
*
*
* Definition:
* The date (and perhaps time) when the prescription was written
*
*/
public MedicationPrescription setDateWritten(DateTimeDt theValue) {
myDateWritten = theValue;
return this;
}
/**
* Sets the value for dateWritten (When prescription was authorized)
*
*
* Definition:
* The date (and perhaps time) when the prescription was written
*
*/
public MedicationPrescription setDateWritten( Date theDate, TemporalPrecisionEnum thePrecision) {
myDateWritten = new DateTimeDt(theDate, thePrecision);
return this;
}
/**
* Sets the value for dateWritten (When prescription was authorized)
*
*
* Definition:
* The date (and perhaps time) when the prescription was written
*
*/
public MedicationPrescription setDateWrittenWithSecondsPrecision( Date theDate) {
myDateWritten = new DateTimeDt(theDate);
return this;
}
/**
* Gets the value(s) for status (active | on hold | completed | entered in error | stopped | superceded).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code specifying the state of the order. Generally this will be active or completed state
*
*/
public BoundCodeDt getStatus() {
if (myStatus == null) {
myStatus = new BoundCodeDt(MedicationPrescriptionStatusEnum.VALUESET_BINDER);
}
return myStatus;
}
/**
* Gets the value(s) for status (active | on hold | completed | entered in error | stopped | superceded).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code specifying the state of the order. Generally this will be active or completed state
*
*/
public BoundCodeDt getStatusElement() {
if (myStatus == null) {
myStatus = new BoundCodeDt(MedicationPrescriptionStatusEnum.VALUESET_BINDER);
}
return myStatus;
}
/**
* Sets the value(s) for status (active | on hold | completed | entered in error | stopped | superceded)
*
*
* Definition:
* A code specifying the state of the order. Generally this will be active or completed state
*
*/
public MedicationPrescription setStatus(BoundCodeDt theValue) {
myStatus = theValue;
return this;
}
/**
* Sets the value(s) for status (active | on hold | completed | entered in error | stopped | superceded)
*
*
* Definition:
* A code specifying the state of the order. Generally this will be active or completed state
*
*/
public MedicationPrescription setStatus(MedicationPrescriptionStatusEnum theValue) {
getStatus().setValueAsEnum(theValue);
return this;
}
/**
* Gets the value(s) for patient (Who prescription is for).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A link to a resource representing the person to whom the medication will be given.
*
*/
public ResourceReferenceDt getPatient() {
if (myPatient == null) {
myPatient = new ResourceReferenceDt();
}
return myPatient;
}
/**
* Gets the value(s) for patient (Who prescription is for).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A link to a resource representing the person to whom the medication will be given.
*
*/
public ResourceReferenceDt getPatientElement() {
if (myPatient == null) {
myPatient = new ResourceReferenceDt();
}
return myPatient;
}
/**
* Sets the value(s) for patient (Who prescription is for)
*
*
* Definition:
* A link to a resource representing the person to whom the medication will be given.
*
*/
public MedicationPrescription setPatient(ResourceReferenceDt theValue) {
myPatient = theValue;
return this;
}
/**
* Gets the value(s) for prescriber (Who ordered the medication(s)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The healthcare professional responsible for authorizing the prescription
*
*/
public ResourceReferenceDt getPrescriber() {
if (myPrescriber == null) {
myPrescriber = new ResourceReferenceDt();
}
return myPrescriber;
}
/**
* Gets the value(s) for prescriber (Who ordered the medication(s)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The healthcare professional responsible for authorizing the prescription
*
*/
public ResourceReferenceDt getPrescriberElement() {
if (myPrescriber == null) {
myPrescriber = new ResourceReferenceDt();
}
return myPrescriber;
}
/**
* Sets the value(s) for prescriber (Who ordered the medication(s))
*
*
* Definition:
* The healthcare professional responsible for authorizing the prescription
*
*/
public MedicationPrescription setPrescriber(ResourceReferenceDt theValue) {
myPrescriber = theValue;
return this;
}
/**
* Gets the value(s) for encounter (Created during encounter / admission / stay).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A link to a resource that identifies the particular occurrence of contact between patient and health care provider.
*
*/
public ResourceReferenceDt getEncounter() {
if (myEncounter == null) {
myEncounter = new ResourceReferenceDt();
}
return myEncounter;
}
/**
* Gets the value(s) for encounter (Created during encounter / admission / stay).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A link to a resource that identifies the particular occurrence of contact between patient and health care provider.
*
*/
public ResourceReferenceDt getEncounterElement() {
if (myEncounter == null) {
myEncounter = new ResourceReferenceDt();
}
return myEncounter;
}
/**
* Sets the value(s) for encounter (Created during encounter / admission / stay)
*
*
* Definition:
* A link to a resource that identifies the particular occurrence of contact between patient and health care provider.
*
*/
public MedicationPrescription setEncounter(ResourceReferenceDt theValue) {
myEncounter = theValue;
return this;
}
/**
* Gets the value(s) for reason[x] (Reason or indication for writing the prescription).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Can be the reason or the indication for writing the prescription.
*
*/
public IDatatype getReason() {
return myReason;
}
/**
* Gets the value(s) for reason[x] (Reason or indication for writing the prescription).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Can be the reason or the indication for writing the prescription.
*
*/
public IDatatype getReasonElement() {
return myReason;
}
/**
* Sets the value(s) for reason[x] (Reason or indication for writing the prescription)
*
*
* Definition:
* Can be the reason or the indication for writing the prescription.
*
*/
public MedicationPrescription setReason(IDatatype theValue) {
myReason = theValue;
return this;
}
/**
* Gets the value(s) for medication (Medication to be taken).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public ResourceReferenceDt getMedication() {
if (myMedication == null) {
myMedication = new ResourceReferenceDt();
}
return myMedication;
}
/**
* Gets the value(s) for medication (Medication to be taken).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public ResourceReferenceDt getMedicationElement() {
if (myMedication == null) {
myMedication = new ResourceReferenceDt();
}
return myMedication;
}
/**
* Sets the value(s) for medication (Medication to be taken)
*
*
* Definition:
* Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public MedicationPrescription setMedication(ResourceReferenceDt theValue) {
myMedication = theValue;
return this;
}
/**
* Gets the value(s) for dosageInstruction (How medication should be taken).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
public java.util.List getDosageInstruction() {
if (myDosageInstruction == null) {
myDosageInstruction = new java.util.ArrayList();
}
return myDosageInstruction;
}
/**
* Gets the value(s) for dosageInstruction (How medication should be taken).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
public java.util.List getDosageInstructionElement() {
if (myDosageInstruction == null) {
myDosageInstruction = new java.util.ArrayList();
}
return myDosageInstruction;
}
/**
* Sets the value(s) for dosageInstruction (How medication should be taken)
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
public MedicationPrescription setDosageInstruction(java.util.List theValue) {
myDosageInstruction = theValue;
return this;
}
/**
* Adds and returns a new value for dosageInstruction (How medication should be taken)
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
public DosageInstruction addDosageInstruction() {
DosageInstruction newType = new DosageInstruction();
getDosageInstruction().add(newType);
return newType;
}
/**
* Gets the first repetition for dosageInstruction (How medication should be taken),
* creating it if it does not already exist.
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
public DosageInstruction getDosageInstructionFirstRep() {
if (getDosageInstruction().isEmpty()) {
return addDosageInstruction();
}
return getDosageInstruction().get(0);
}
/**
* Gets the value(s) for dispense (Medication supply authorization).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Deals with details of the dispense part of the order
*
*/
public Dispense getDispense() {
if (myDispense == null) {
myDispense = new Dispense();
}
return myDispense;
}
/**
* Gets the value(s) for dispense (Medication supply authorization).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Deals with details of the dispense part of the order
*
*/
public Dispense getDispenseElement() {
if (myDispense == null) {
myDispense = new Dispense();
}
return myDispense;
}
/**
* Sets the value(s) for dispense (Medication supply authorization)
*
*
* Definition:
* Deals with details of the dispense part of the order
*
*/
public MedicationPrescription setDispense(Dispense theValue) {
myDispense = theValue;
return this;
}
/**
* Gets the value(s) for substitution (Any restrictions on medication substitution?).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done.
*
*/
public Substitution getSubstitution() {
if (mySubstitution == null) {
mySubstitution = new Substitution();
}
return mySubstitution;
}
/**
* Gets the value(s) for substitution (Any restrictions on medication substitution?).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done.
*
*/
public Substitution getSubstitutionElement() {
if (mySubstitution == null) {
mySubstitution = new Substitution();
}
return mySubstitution;
}
/**
* Sets the value(s) for substitution (Any restrictions on medication substitution?)
*
*
* Definition:
* Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done.
*
*/
public MedicationPrescription setSubstitution(Substitution theValue) {
mySubstitution = theValue;
return this;
}
/**
* Block class for child element: MedicationPrescription.dosageInstruction (How medication should be taken)
*
*
* Definition:
* Indicates how the medication is to be used by the patient
*
*/
@Block()
public static class DosageInstruction
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="text", type=StringDt.class, order=0, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Dosage instructions expressed as text",
formalDefinition="Free text dosage instructions for cases where the instructions are too complex to code."
)
private StringDt myText;
@Child(name="additionalInstructions", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Supplemental instructions - e.g. \"with meals\"",
formalDefinition="Additional instructions such as \"Swallow with plenty of water\" which may or may not be coded."
)
private CodeableConceptDt myAdditionalInstructions;
@Child(name="timing", order=2, min=0, max=1, summary=false, modifier=false, type={
DateTimeDt.class, PeriodDt.class, ScheduleDt.class })
@Description(
shortDefinition="When medication should be administered",
formalDefinition="The timing schedule for giving the medication to the patient. The Schedule data type allows many different expressions, for example. \"Every 8 hours\"; \"Three times a day\"; \"1/2 an hour before breakfast for 10 days from 23-Dec 2011:\"; \"15 Oct 2013, 17 Oct 2013 and 1 Nov 2013\""
)
private IDatatype myTiming;
@Child(name="asNeeded", order=3, min=0, max=1, summary=false, modifier=false, type={
BooleanDt.class, CodeableConceptDt.class })
@Description(
shortDefinition="Take \"as needed\" f(or x)",
formalDefinition="If set to true or if specified as a CodeableConcept, indicates that the medication is only taken when needed within the specified schedule rather than at every scheduled dose. If a CodeableConcept is present, it indicates the pre-condition for taking the Medication"
)
private IDatatype myAsNeeded;
@Child(name="site", type=CodeableConceptDt.class, order=4, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Body site to administer to",
formalDefinition="A coded specification of the anatomic site where the medication first enters the body"
)
private CodeableConceptDt mySite;
@Child(name="route", type=CodeableConceptDt.class, order=5, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="How drug should enter body",
formalDefinition="A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient."
)
private CodeableConceptDt myRoute;
@Child(name="method", type=CodeableConceptDt.class, order=6, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Technique for administering medication",
formalDefinition="A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. Examples: Slow Push; Deep IV.Terminologies used often pre-coordinate this term with the route and or form of administration."
)
private CodeableConceptDt myMethod;
@Child(name="doseQuantity", type=QuantityDt.class, order=7, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Amount of medication per dose",
formalDefinition="The amount of therapeutic or other substance given at one administration event."
)
private QuantityDt myDoseQuantity;
@Child(name="rate", type=RatioDt.class, order=8, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Amount of medication per unit of time",
formalDefinition="Identifies the speed with which the substance is introduced into the subject. Typically the rate for an infusion. 200ml in 2 hours."
)
private RatioDt myRate;
@Child(name="maxDosePerPeriod", type=RatioDt.class, order=9, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Upper limit on medication per unit of time",
formalDefinition="The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. E.g. 1000mg in 24 hours."
)
private RatioDt myMaxDosePerPeriod;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myText, myAdditionalInstructions, myTiming, myAsNeeded, mySite, myRoute, myMethod, myDoseQuantity, myRate, myMaxDosePerPeriod);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myText, myAdditionalInstructions, myTiming, myAsNeeded, mySite, myRoute, myMethod, myDoseQuantity, myRate, myMaxDosePerPeriod);
}
/**
* Gets the value(s) for text (Dosage instructions expressed as text).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Free text dosage instructions for cases where the instructions are too complex to code.
*
*/
public StringDt getText() {
if (myText == null) {
myText = new StringDt();
}
return myText;
}
/**
* Gets the value(s) for text (Dosage instructions expressed as text).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Free text dosage instructions for cases where the instructions are too complex to code.
*
*/
public StringDt getTextElement() {
if (myText == null) {
myText = new StringDt();
}
return myText;
}
/**
* Sets the value(s) for text (Dosage instructions expressed as text)
*
*
* Definition:
* Free text dosage instructions for cases where the instructions are too complex to code.
*
*/
public DosageInstruction setText(StringDt theValue) {
myText = theValue;
return this;
}
/**
* Sets the value for text (Dosage instructions expressed as text)
*
*
* Definition:
* Free text dosage instructions for cases where the instructions are too complex to code.
*
*/
public DosageInstruction setText( String theString) {
myText = new StringDt(theString);
return this;
}
/**
* Gets the value(s) for additionalInstructions (Supplemental instructions - e.g. \"with meals\").
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Additional instructions such as \"Swallow with plenty of water\" which may or may not be coded.
*
*/
public CodeableConceptDt getAdditionalInstructions() {
if (myAdditionalInstructions == null) {
myAdditionalInstructions = new CodeableConceptDt();
}
return myAdditionalInstructions;
}
/**
* Gets the value(s) for additionalInstructions (Supplemental instructions - e.g. \"with meals\").
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Additional instructions such as \"Swallow with plenty of water\" which may or may not be coded.
*
*/
public CodeableConceptDt getAdditionalInstructionsElement() {
if (myAdditionalInstructions == null) {
myAdditionalInstructions = new CodeableConceptDt();
}
return myAdditionalInstructions;
}
/**
* Sets the value(s) for additionalInstructions (Supplemental instructions - e.g. \"with meals\")
*
*
* Definition:
* Additional instructions such as \"Swallow with plenty of water\" which may or may not be coded.
*
*/
public DosageInstruction setAdditionalInstructions(CodeableConceptDt theValue) {
myAdditionalInstructions = theValue;
return this;
}
/**
* Gets the value(s) for timing[x] (When medication should be administered).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The timing schedule for giving the medication to the patient. The Schedule data type allows many different expressions, for example. \"Every 8 hours\"; \"Three times a day\"; \"1/2 an hour before breakfast for 10 days from 23-Dec 2011:\"; \"15 Oct 2013, 17 Oct 2013 and 1 Nov 2013\"
*
*/
public IDatatype getTiming() {
return myTiming;
}
/**
* Gets the value(s) for timing[x] (When medication should be administered).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The timing schedule for giving the medication to the patient. The Schedule data type allows many different expressions, for example. \"Every 8 hours\"; \"Three times a day\"; \"1/2 an hour before breakfast for 10 days from 23-Dec 2011:\"; \"15 Oct 2013, 17 Oct 2013 and 1 Nov 2013\"
*
*/
public IDatatype getTimingElement() {
return myTiming;
}
/**
* Sets the value(s) for timing[x] (When medication should be administered)
*
*
* Definition:
* The timing schedule for giving the medication to the patient. The Schedule data type allows many different expressions, for example. \"Every 8 hours\"; \"Three times a day\"; \"1/2 an hour before breakfast for 10 days from 23-Dec 2011:\"; \"15 Oct 2013, 17 Oct 2013 and 1 Nov 2013\"
*
*/
public DosageInstruction setTiming(IDatatype theValue) {
myTiming = theValue;
return this;
}
/**
* Gets the value(s) for asNeeded[x] (Take \"as needed\" f(or x)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* If set to true or if specified as a CodeableConcept, indicates that the medication is only taken when needed within the specified schedule rather than at every scheduled dose. If a CodeableConcept is present, it indicates the pre-condition for taking the Medication
*
*/
public IDatatype getAsNeeded() {
return myAsNeeded;
}
/**
* Gets the value(s) for asNeeded[x] (Take \"as needed\" f(or x)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* If set to true or if specified as a CodeableConcept, indicates that the medication is only taken when needed within the specified schedule rather than at every scheduled dose. If a CodeableConcept is present, it indicates the pre-condition for taking the Medication
*
*/
public IDatatype getAsNeededElement() {
return myAsNeeded;
}
/**
* Sets the value(s) for asNeeded[x] (Take \"as needed\" f(or x))
*
*
* Definition:
* If set to true or if specified as a CodeableConcept, indicates that the medication is only taken when needed within the specified schedule rather than at every scheduled dose. If a CodeableConcept is present, it indicates the pre-condition for taking the Medication
*
*/
public DosageInstruction setAsNeeded(IDatatype theValue) {
myAsNeeded = theValue;
return this;
}
/**
* Gets the value(s) for site (Body site to administer to).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A coded specification of the anatomic site where the medication first enters the body
*
*/
public CodeableConceptDt getSite() {
if (mySite == null) {
mySite = new CodeableConceptDt();
}
return mySite;
}
/**
* Gets the value(s) for site (Body site to administer to).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A coded specification of the anatomic site where the medication first enters the body
*
*/
public CodeableConceptDt getSiteElement() {
if (mySite == null) {
mySite = new CodeableConceptDt();
}
return mySite;
}
/**
* Sets the value(s) for site (Body site to administer to)
*
*
* Definition:
* A coded specification of the anatomic site where the medication first enters the body
*
*/
public DosageInstruction setSite(CodeableConceptDt theValue) {
mySite = theValue;
return this;
}
/**
* Gets the value(s) for route (How drug should enter body).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient.
*
*/
public CodeableConceptDt getRoute() {
if (myRoute == null) {
myRoute = new CodeableConceptDt();
}
return myRoute;
}
/**
* Gets the value(s) for route (How drug should enter body).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient.
*
*/
public CodeableConceptDt getRouteElement() {
if (myRoute == null) {
myRoute = new CodeableConceptDt();
}
return myRoute;
}
/**
* Sets the value(s) for route (How drug should enter body)
*
*
* Definition:
* A code specifying the route or physiological path of administration of a therapeutic agent into or onto a patient.
*
*/
public DosageInstruction setRoute(CodeableConceptDt theValue) {
myRoute = theValue;
return this;
}
/**
* Gets the value(s) for method (Technique for administering medication).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. Examples: Slow Push; Deep IV.Terminologies used often pre-coordinate this term with the route and or form of administration.
*
*/
public CodeableConceptDt getMethod() {
if (myMethod == null) {
myMethod = new CodeableConceptDt();
}
return myMethod;
}
/**
* Gets the value(s) for method (Technique for administering medication).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. Examples: Slow Push; Deep IV.Terminologies used often pre-coordinate this term with the route and or form of administration.
*
*/
public CodeableConceptDt getMethodElement() {
if (myMethod == null) {
myMethod = new CodeableConceptDt();
}
return myMethod;
}
/**
* Sets the value(s) for method (Technique for administering medication)
*
*
* Definition:
* A coded value indicating the method by which the medication is introduced into or onto the body. Most commonly used for injections. Examples: Slow Push; Deep IV.Terminologies used often pre-coordinate this term with the route and or form of administration.
*
*/
public DosageInstruction setMethod(CodeableConceptDt theValue) {
myMethod = theValue;
return this;
}
/**
* Gets the value(s) for doseQuantity (Amount of medication per dose).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public QuantityDt getDoseQuantity() {
if (myDoseQuantity == null) {
myDoseQuantity = new QuantityDt();
}
return myDoseQuantity;
}
/**
* Gets the value(s) for doseQuantity (Amount of medication per dose).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public QuantityDt getDoseQuantityElement() {
if (myDoseQuantity == null) {
myDoseQuantity = new QuantityDt();
}
return myDoseQuantity;
}
/**
* Sets the value(s) for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity(QuantityDt theValue) {
myDoseQuantity = theValue;
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( QuantityCompararatorEnum theComparator, long theValue, String theUnits) {
myDoseQuantity = new QuantityDt(theComparator, theValue, theUnits);
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( QuantityCompararatorEnum theComparator, double theValue, String theSystem, String theUnits) {
myDoseQuantity = new QuantityDt(theComparator, theValue, theSystem, theUnits);
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( QuantityCompararatorEnum theComparator, long theValue, String theSystem, String theUnits) {
myDoseQuantity = new QuantityDt(theComparator, theValue, theSystem, theUnits);
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( double theValue) {
myDoseQuantity = new QuantityDt(theValue);
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( long theValue) {
myDoseQuantity = new QuantityDt(theValue);
return this;
}
/**
* Sets the value for doseQuantity (Amount of medication per dose)
*
*
* Definition:
* The amount of therapeutic or other substance given at one administration event.
*
*/
public DosageInstruction setDoseQuantity( QuantityCompararatorEnum theComparator, double theValue, String theUnits) {
myDoseQuantity = new QuantityDt(theComparator, theValue, theUnits);
return this;
}
/**
* Gets the value(s) for rate (Amount of medication per unit of time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the speed with which the substance is introduced into the subject. Typically the rate for an infusion. 200ml in 2 hours.
*
*/
public RatioDt getRate() {
if (myRate == null) {
myRate = new RatioDt();
}
return myRate;
}
/**
* Gets the value(s) for rate (Amount of medication per unit of time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the speed with which the substance is introduced into the subject. Typically the rate for an infusion. 200ml in 2 hours.
*
*/
public RatioDt getRateElement() {
if (myRate == null) {
myRate = new RatioDt();
}
return myRate;
}
/**
* Sets the value(s) for rate (Amount of medication per unit of time)
*
*
* Definition:
* Identifies the speed with which the substance is introduced into the subject. Typically the rate for an infusion. 200ml in 2 hours.
*
*/
public DosageInstruction setRate(RatioDt theValue) {
myRate = theValue;
return this;
}
/**
* Gets the value(s) for maxDosePerPeriod (Upper limit on medication per unit of time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. E.g. 1000mg in 24 hours.
*
*/
public RatioDt getMaxDosePerPeriod() {
if (myMaxDosePerPeriod == null) {
myMaxDosePerPeriod = new RatioDt();
}
return myMaxDosePerPeriod;
}
/**
* Gets the value(s) for maxDosePerPeriod (Upper limit on medication per unit of time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. E.g. 1000mg in 24 hours.
*
*/
public RatioDt getMaxDosePerPeriodElement() {
if (myMaxDosePerPeriod == null) {
myMaxDosePerPeriod = new RatioDt();
}
return myMaxDosePerPeriod;
}
/**
* Sets the value(s) for maxDosePerPeriod (Upper limit on medication per unit of time)
*
*
* Definition:
* The maximum total quantity of a therapeutic substance that may be administered to a subject over the period of time. E.g. 1000mg in 24 hours.
*
*/
public DosageInstruction setMaxDosePerPeriod(RatioDt theValue) {
myMaxDosePerPeriod = theValue;
return this;
}
}
/**
* Block class for child element: MedicationPrescription.dispense (Medication supply authorization)
*
*
* Definition:
* Deals with details of the dispense part of the order
*
*/
@Block()
public static class Dispense
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="medication", order=0, min=0, max=1, summary=false, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Medication.class })
@Description(
shortDefinition="Product to be supplied",
formalDefinition="Identifies the medication that is to be dispensed. This may be a more specifically defined than the medicationPrescription.medication . This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications."
)
private ResourceReferenceDt myMedication;
@Child(name="validityPeriod", type=PeriodDt.class, order=1, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Time period supply is authorized for",
formalDefinition="Design Comments: This indicates the validity period of a prescription (stale dating the Prescription) It reflects the prescriber perspective for the validity of the prescription. Dispenses must not be made against the prescription outside of this period. The lower-bound of the Dispensing Window signifies the earliest date that the prescription can be filled for the first time. If an upper-bound is not specified then the Prescription is open-ended or will default to a stale-date based on regulations. Rationale: Indicates when the Prescription becomes valid, and when it ceases to be a dispensable Prescription."
)
private PeriodDt myValidityPeriod;
@Child(name="numberOfRepeatsAllowed", type=IntegerDt.class, order=2, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="# of refills authorized",
formalDefinition="An integer indicating the number of repeats of the Dispense. UsageNotes: For example, the number of times the prescribed quantity is to be supplied including the initial standard fill."
)
private IntegerDt myNumberOfRepeatsAllowed;
@Child(name="quantity", type=QuantityDt.class, order=3, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Amount of medication to supply per dispense",
formalDefinition="The amount that is to be dispensed."
)
private QuantityDt myQuantity;
@Child(name="expectedSupplyDuration", type=DurationDt.class, order=4, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Days supply per dispense",
formalDefinition="Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last. In some situations, this attribute may be used instead of quantity to identify the amount supplied by how long it is expected to last, rather than the physical quantity issued, e.g. 90 days supply of medication (based on an ordered dosage) When possible, it is always better to specify quantity, as this tends to be more precise. expectedSupplyDuration will always be an estimate that can be influenced by external factors."
)
private DurationDt myExpectedSupplyDuration;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myMedication, myValidityPeriod, myNumberOfRepeatsAllowed, myQuantity, myExpectedSupplyDuration);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myMedication, myValidityPeriod, myNumberOfRepeatsAllowed, myQuantity, myExpectedSupplyDuration);
}
/**
* Gets the value(s) for medication (Product to be supplied).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the medication that is to be dispensed. This may be a more specifically defined than the medicationPrescription.medication . This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public ResourceReferenceDt getMedication() {
if (myMedication == null) {
myMedication = new ResourceReferenceDt();
}
return myMedication;
}
/**
* Gets the value(s) for medication (Product to be supplied).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the medication that is to be dispensed. This may be a more specifically defined than the medicationPrescription.medication . This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public ResourceReferenceDt getMedicationElement() {
if (myMedication == null) {
myMedication = new ResourceReferenceDt();
}
return myMedication;
}
/**
* Sets the value(s) for medication (Product to be supplied)
*
*
* Definition:
* Identifies the medication that is to be dispensed. This may be a more specifically defined than the medicationPrescription.medication . This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.
*
*/
public Dispense setMedication(ResourceReferenceDt theValue) {
myMedication = theValue;
return this;
}
/**
* Gets the value(s) for validityPeriod (Time period supply is authorized for).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Design Comments: This indicates the validity period of a prescription (stale dating the Prescription) It reflects the prescriber perspective for the validity of the prescription. Dispenses must not be made against the prescription outside of this period. The lower-bound of the Dispensing Window signifies the earliest date that the prescription can be filled for the first time. If an upper-bound is not specified then the Prescription is open-ended or will default to a stale-date based on regulations. Rationale: Indicates when the Prescription becomes valid, and when it ceases to be a dispensable Prescription.
*
*/
public PeriodDt getValidityPeriod() {
if (myValidityPeriod == null) {
myValidityPeriod = new PeriodDt();
}
return myValidityPeriod;
}
/**
* Gets the value(s) for validityPeriod (Time period supply is authorized for).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Design Comments: This indicates the validity period of a prescription (stale dating the Prescription) It reflects the prescriber perspective for the validity of the prescription. Dispenses must not be made against the prescription outside of this period. The lower-bound of the Dispensing Window signifies the earliest date that the prescription can be filled for the first time. If an upper-bound is not specified then the Prescription is open-ended or will default to a stale-date based on regulations. Rationale: Indicates when the Prescription becomes valid, and when it ceases to be a dispensable Prescription.
*
*/
public PeriodDt getValidityPeriodElement() {
if (myValidityPeriod == null) {
myValidityPeriod = new PeriodDt();
}
return myValidityPeriod;
}
/**
* Sets the value(s) for validityPeriod (Time period supply is authorized for)
*
*
* Definition:
* Design Comments: This indicates the validity period of a prescription (stale dating the Prescription) It reflects the prescriber perspective for the validity of the prescription. Dispenses must not be made against the prescription outside of this period. The lower-bound of the Dispensing Window signifies the earliest date that the prescription can be filled for the first time. If an upper-bound is not specified then the Prescription is open-ended or will default to a stale-date based on regulations. Rationale: Indicates when the Prescription becomes valid, and when it ceases to be a dispensable Prescription.
*
*/
public Dispense setValidityPeriod(PeriodDt theValue) {
myValidityPeriod = theValue;
return this;
}
/**
* Gets the value(s) for numberOfRepeatsAllowed (# of refills authorized).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* An integer indicating the number of repeats of the Dispense. UsageNotes: For example, the number of times the prescribed quantity is to be supplied including the initial standard fill.
*
*/
public IntegerDt getNumberOfRepeatsAllowed() {
if (myNumberOfRepeatsAllowed == null) {
myNumberOfRepeatsAllowed = new IntegerDt();
}
return myNumberOfRepeatsAllowed;
}
/**
* Gets the value(s) for numberOfRepeatsAllowed (# of refills authorized).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* An integer indicating the number of repeats of the Dispense. UsageNotes: For example, the number of times the prescribed quantity is to be supplied including the initial standard fill.
*
*/
public IntegerDt getNumberOfRepeatsAllowedElement() {
if (myNumberOfRepeatsAllowed == null) {
myNumberOfRepeatsAllowed = new IntegerDt();
}
return myNumberOfRepeatsAllowed;
}
/**
* Sets the value(s) for numberOfRepeatsAllowed (# of refills authorized)
*
*
* Definition:
* An integer indicating the number of repeats of the Dispense. UsageNotes: For example, the number of times the prescribed quantity is to be supplied including the initial standard fill.
*
*/
public Dispense setNumberOfRepeatsAllowed(IntegerDt theValue) {
myNumberOfRepeatsAllowed = theValue;
return this;
}
/**
* Sets the value for numberOfRepeatsAllowed (# of refills authorized)
*
*
* Definition:
* An integer indicating the number of repeats of the Dispense. UsageNotes: For example, the number of times the prescribed quantity is to be supplied including the initial standard fill.
*
*/
public Dispense setNumberOfRepeatsAllowed( int theInteger) {
myNumberOfRepeatsAllowed = new IntegerDt(theInteger);
return this;
}
/**
* Gets the value(s) for quantity (Amount of medication to supply per dispense).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public QuantityDt getQuantity() {
if (myQuantity == null) {
myQuantity = new QuantityDt();
}
return myQuantity;
}
/**
* Gets the value(s) for quantity (Amount of medication to supply per dispense).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public QuantityDt getQuantityElement() {
if (myQuantity == null) {
myQuantity = new QuantityDt();
}
return myQuantity;
}
/**
* Sets the value(s) for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity(QuantityDt theValue) {
myQuantity = theValue;
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( QuantityCompararatorEnum theComparator, long theValue, String theUnits) {
myQuantity = new QuantityDt(theComparator, theValue, theUnits);
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( QuantityCompararatorEnum theComparator, double theValue, String theSystem, String theUnits) {
myQuantity = new QuantityDt(theComparator, theValue, theSystem, theUnits);
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( QuantityCompararatorEnum theComparator, long theValue, String theSystem, String theUnits) {
myQuantity = new QuantityDt(theComparator, theValue, theSystem, theUnits);
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( double theValue) {
myQuantity = new QuantityDt(theValue);
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( long theValue) {
myQuantity = new QuantityDt(theValue);
return this;
}
/**
* Sets the value for quantity (Amount of medication to supply per dispense)
*
*
* Definition:
* The amount that is to be dispensed.
*
*/
public Dispense setQuantity( QuantityCompararatorEnum theComparator, double theValue, String theUnits) {
myQuantity = new QuantityDt(theComparator, theValue, theUnits);
return this;
}
/**
* Gets the value(s) for expectedSupplyDuration (Days supply per dispense).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last. In some situations, this attribute may be used instead of quantity to identify the amount supplied by how long it is expected to last, rather than the physical quantity issued, e.g. 90 days supply of medication (based on an ordered dosage) When possible, it is always better to specify quantity, as this tends to be more precise. expectedSupplyDuration will always be an estimate that can be influenced by external factors.
*
*/
public DurationDt getExpectedSupplyDuration() {
if (myExpectedSupplyDuration == null) {
myExpectedSupplyDuration = new DurationDt();
}
return myExpectedSupplyDuration;
}
/**
* Gets the value(s) for expectedSupplyDuration (Days supply per dispense).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last. In some situations, this attribute may be used instead of quantity to identify the amount supplied by how long it is expected to last, rather than the physical quantity issued, e.g. 90 days supply of medication (based on an ordered dosage) When possible, it is always better to specify quantity, as this tends to be more precise. expectedSupplyDuration will always be an estimate that can be influenced by external factors.
*
*/
public DurationDt getExpectedSupplyDurationElement() {
if (myExpectedSupplyDuration == null) {
myExpectedSupplyDuration = new DurationDt();
}
return myExpectedSupplyDuration;
}
/**
* Sets the value(s) for expectedSupplyDuration (Days supply per dispense)
*
*
* Definition:
* Identifies the period time over which the supplied product is expected to be used, or the length of time the dispense is expected to last. In some situations, this attribute may be used instead of quantity to identify the amount supplied by how long it is expected to last, rather than the physical quantity issued, e.g. 90 days supply of medication (based on an ordered dosage) When possible, it is always better to specify quantity, as this tends to be more precise. expectedSupplyDuration will always be an estimate that can be influenced by external factors.
*
*/
public Dispense setExpectedSupplyDuration(DurationDt theValue) {
myExpectedSupplyDuration = theValue;
return this;
}
}
/**
* Block class for child element: MedicationPrescription.substitution (Any restrictions on medication substitution?)
*
*
* Definition:
* Indicates whether or not substitution can or should be part of the dispense. In some cases substitution must happen, in other cases substitution must not happen, and in others it does not matter. This block explains the prescriber's intent. If nothing is specified substitution may be done.
*
*/
@Block()
public static class Substitution
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="type", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=false, modifier=false)
@Description(
shortDefinition="generic | formulary +",
formalDefinition="A code signifying whether a different drug should be dispensed from what was prescribed."
)
private CodeableConceptDt myType;
@Child(name="reason", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Why should substitution (not) be made",
formalDefinition="Indicates the reason for the substitution, or why substitution must or must not be performed."
)
private CodeableConceptDt myReason;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myType, myReason);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myType, myReason);
}
/**
* Gets the value(s) for type (generic | formulary +).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code signifying whether a different drug should be dispensed from what was prescribed.
*
*/
public CodeableConceptDt getType() {
if (myType == null) {
myType = new CodeableConceptDt();
}
return myType;
}
/**
* Gets the value(s) for type (generic | formulary +).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code signifying whether a different drug should be dispensed from what was prescribed.
*
*/
public CodeableConceptDt getTypeElement() {
if (myType == null) {
myType = new CodeableConceptDt();
}
return myType;
}
/**
* Sets the value(s) for type (generic | formulary +)
*
*
* Definition:
* A code signifying whether a different drug should be dispensed from what was prescribed.
*
*/
public Substitution setType(CodeableConceptDt theValue) {
myType = theValue;
return this;
}
/**
* Gets the value(s) for reason (Why should substitution (not) be made).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates the reason for the substitution, or why substitution must or must not be performed.
*
*/
public CodeableConceptDt getReason() {
if (myReason == null) {
myReason = new CodeableConceptDt();
}
return myReason;
}
/**
* Gets the value(s) for reason (Why should substitution (not) be made).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Indicates the reason for the substitution, or why substitution must or must not be performed.
*
*/
public CodeableConceptDt getReasonElement() {
if (myReason == null) {
myReason = new CodeableConceptDt();
}
return myReason;
}
/**
* Sets the value(s) for reason (Why should substitution (not) be made)
*
*
* Definition:
* Indicates the reason for the substitution, or why substitution must or must not be performed.
*
*/
public Substitution setReason(CodeableConceptDt theValue) {
myReason = theValue;
return this;
}
}
@Override
public String getResourceName() {
return "MedicationPrescription";
}
public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() {
return ca.uhn.fhir.context.FhirVersionEnum.DSTU1;
}
}