
ca.uhn.fhir.model.dstu.resource.Composition 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 Composition Resource
* (A set of resources composed into a single coherent clinical statement with clinical attestation)
*
*
* Definition:
* A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement.
*
*
*
* Requirements:
* To support documents, and also to capture the EN13606 notion of an attested commit to the patient EHR, and to allow a set of disparate resources at the information/engineering level to be gathered into a clinical statement
*
*
*
* Profile Definition:
* http://hl7.org/fhir/profiles/Composition
*
*
*/
@ResourceDef(name="Composition", profile="http://hl7.org/fhir/profiles/Composition", id="composition")
public class Composition extends ca.uhn.fhir.model.dstu.resource.BaseResource
implements IResource {
/**
* Search parameter constant for type
*
* Description:
* Type: token
* Path: Composition.type
*
*/
@SearchParamDefinition(name="type", path="Composition.type", description="", type="token" )
public static final String SP_TYPE = "type";
/**
* Fluent Client search parameter constant for type
*
* Description:
* Type: token
* Path: Composition.type
*
*/
public static final TokenClientParam TYPE = new TokenClientParam(SP_TYPE);
/**
* Search parameter constant for class
*
* Description:
* Type: token
* Path: Composition.class
*
*/
@SearchParamDefinition(name="class", path="Composition.class", description="", type="token" )
public static final String SP_CLASS = "class";
/**
* Fluent Client search parameter constant for class
*
* Description:
* Type: token
* Path: Composition.class
*
*/
public static final TokenClientParam CLASS = new TokenClientParam(SP_CLASS);
/**
* Search parameter constant for date
*
* Description:
* Type: date
* Path: Composition.date
*
*/
@SearchParamDefinition(name="date", path="Composition.date", description="", type="date" )
public static final String SP_DATE = "date";
/**
* Fluent Client search parameter constant for date
*
* Description:
* Type: date
* Path: Composition.date
*
*/
public static final DateClientParam DATE = new DateClientParam(SP_DATE);
/**
* Search parameter constant for subject
*
* Description:
* Type: reference
* Path: Composition.subject
*
*/
@SearchParamDefinition(name="subject", path="Composition.subject", description="", type="reference" )
public static final String SP_SUBJECT = "subject";
/**
* Fluent Client search parameter constant for subject
*
* Description:
* Type: reference
* Path: Composition.subject
*
*/
public static final ReferenceClientParam SUBJECT = new ReferenceClientParam(SP_SUBJECT);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "Composition.subject".
*/
public static final Include INCLUDE_SUBJECT = new Include("Composition.subject");
/**
* Search parameter constant for author
*
* Description:
* Type: reference
* Path: Composition.author
*
*/
@SearchParamDefinition(name="author", path="Composition.author", description="", type="reference" )
public static final String SP_AUTHOR = "author";
/**
* Fluent Client search parameter constant for author
*
* Description:
* Type: reference
* Path: Composition.author
*
*/
public static final ReferenceClientParam AUTHOR = new ReferenceClientParam(SP_AUTHOR);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "Composition.author".
*/
public static final Include INCLUDE_AUTHOR = new Include("Composition.author");
/**
* Search parameter constant for attester
*
* Description:
* Type: reference
* Path: Composition.attester.party
*
*/
@SearchParamDefinition(name="attester", path="Composition.attester.party", description="", type="reference" )
public static final String SP_ATTESTER = "attester";
/**
* Fluent Client search parameter constant for attester
*
* Description:
* Type: reference
* Path: Composition.attester.party
*
*/
public static final ReferenceClientParam ATTESTER = new ReferenceClientParam(SP_ATTESTER);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "Composition.attester.party".
*/
public static final Include INCLUDE_ATTESTER_PARTY = new Include("Composition.attester.party");
/**
* Search parameter constant for context
*
* Description:
* Type: token
* Path: Composition.event.code
*
*/
@SearchParamDefinition(name="context", path="Composition.event.code", description="", type="token" )
public static final String SP_CONTEXT = "context";
/**
* Fluent Client search parameter constant for context
*
* Description:
* Type: token
* Path: Composition.event.code
*
*/
public static final TokenClientParam CONTEXT = new TokenClientParam(SP_CONTEXT);
/**
* Search parameter constant for section-type
*
* Description:
* Type: token
* Path: Composition.section.code
*
*/
@SearchParamDefinition(name="section-type", path="Composition.section.code", description="", type="token" )
public static final String SP_SECTION_TYPE = "section-type";
/**
* Fluent Client search parameter constant for section-type
*
* Description:
* Type: token
* Path: Composition.section.code
*
*/
public static final TokenClientParam SECTION_TYPE = new TokenClientParam(SP_SECTION_TYPE);
/**
* Search parameter constant for section-content
*
* Description:
* Type: reference
* Path: Composition.section.content
*
*/
@SearchParamDefinition(name="section-content", path="Composition.section.content", description="", type="reference" )
public static final String SP_SECTION_CONTENT = "section-content";
/**
* Fluent Client search parameter constant for section-content
*
* Description:
* Type: reference
* Path: Composition.section.content
*
*/
public static final ReferenceClientParam SECTION_CONTENT = new ReferenceClientParam(SP_SECTION_CONTENT);
/**
* Constant for fluent queries to be used to add include statements. Specifies
* the path value of "Composition.section.content".
*/
public static final Include INCLUDE_SECTION_CONTENT = new Include("Composition.section.content");
/**
* Search parameter constant for identifier
*
* Description:
* Type: token
* Path: Composition.identifier
*
*/
@SearchParamDefinition(name="identifier", path="Composition.identifier", description="", type="token" )
public static final String SP_IDENTIFIER = "identifier";
/**
* Fluent Client search parameter constant for identifier
*
* Description:
* Type: token
* Path: Composition.identifier
*
*/
public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER);
@Child(name="identifier", type=IdentifierDt.class, order=0, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="Logical identifier of composition (version-independent)",
formalDefinition="Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time"
)
private IdentifierDt myIdentifier;
@Child(name="date", type=DateTimeDt.class, order=1, min=1, max=1, summary=true, modifier=false)
@Description(
shortDefinition="Composition editing time",
formalDefinition="The composition editing time, when the composition was last logically changed by the author"
)
private DateTimeDt myDate;
@Child(name="type", type=CodeableConceptDt.class, order=2, min=1, max=1, summary=true, modifier=false)
@Description(
shortDefinition="Kind of composition (LOINC if possible)",
formalDefinition="Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition"
)
private CodeableConceptDt myType;
@Child(name="class", type=CodeableConceptDt.class, order=3, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="Categorization of Composition",
formalDefinition="A categorization for the type of the composition. This may be implied by or derived from the code specified in the Composition Type"
)
private CodeableConceptDt myClassElement;
@Child(name="title", type=StringDt.class, order=4, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="Human Readable name/title",
formalDefinition="Official human-readable label for the composition"
)
private StringDt myTitle;
@Child(name="status", type=CodeDt.class, order=5, min=1, max=1, summary=true, modifier=true)
@Description(
shortDefinition="preliminary | final | appended | amended | entered in error",
formalDefinition="The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document"
)
private BoundCodeDt myStatus;
@Child(name="confidentiality", type=CodingDt.class, order=6, min=1, max=1, summary=true, modifier=true)
@Description(
shortDefinition="As defined by affinity domain",
formalDefinition="The code specifying the level of confidentiality of the Composition"
)
private CodingDt myConfidentiality;
@Child(name="subject", order=7, min=1, max=1, summary=true, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Patient.class, ca.uhn.fhir.model.dstu.resource.Practitioner.class, ca.uhn.fhir.model.dstu.resource.Group.class, ca.uhn.fhir.model.dstu.resource.Device.class, ca.uhn.fhir.model.dstu.resource.Location.class })
@Description(
shortDefinition="Who and/or what the composition is about",
formalDefinition="Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (I.e. machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure)"
)
private ResourceReferenceDt mySubject;
@Child(name="author", order=8, min=1, max=Child.MAX_UNLIMITED, summary=true, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Practitioner.class, ca.uhn.fhir.model.dstu.resource.Device.class, ca.uhn.fhir.model.dstu.resource.Patient.class, ca.uhn.fhir.model.dstu.resource.RelatedPerson.class })
@Description(
shortDefinition="Who and/or what authored the composition",
formalDefinition="Identifies who is responsible for the information in the composition. (Not necessarily who typed it in.)"
)
private java.util.List myAuthor;
@Child(name="attester", order=9, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false)
@Description(
shortDefinition="Attests to accuracy of composition",
formalDefinition="A participant who has attested to the accuracy of the composition/document"
)
private java.util.List myAttester;
@Child(name="custodian", order=10, min=0, max=1, summary=true, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Organization.class })
@Description(
shortDefinition="Org which maintains the composition",
formalDefinition="Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information"
)
private ResourceReferenceDt myCustodian;
@Child(name="event", order=11, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="The clinical event/act/item being documented",
formalDefinition="The main event/act/item, such as a colonoscopy or an appendectomy, being documented"
)
private Event myEvent;
@Child(name="encounter", order=12, min=0, max=1, summary=true, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Encounter.class })
@Description(
shortDefinition="Context of the conposition",
formalDefinition="Describes the clinical encounter or type of care this documentation is associated with."
)
private ResourceReferenceDt myEncounter;
@Child(name="section", order=13, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false)
@Description(
shortDefinition="Composition is broken into sections",
formalDefinition="The root of the sections that make up the composition"
)
private java.util.List mySection;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myIdentifier, myDate, myType, myClassElement, myTitle, myStatus, myConfidentiality, mySubject, myAuthor, myAttester, myCustodian, myEvent, myEncounter, mySection);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myIdentifier, myDate, myType, myClassElement, myTitle, myStatus, myConfidentiality, mySubject, myAuthor, myAttester, myCustodian, myEvent, myEncounter, mySection);
}
/**
* Gets the value(s) for identifier (Logical identifier of composition (version-independent)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time
*
*/
public IdentifierDt getIdentifier() {
if (myIdentifier == null) {
myIdentifier = new IdentifierDt();
}
return myIdentifier;
}
/**
* Gets the value(s) for identifier (Logical identifier of composition (version-independent)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time
*
*/
public IdentifierDt getIdentifierElement() {
if (myIdentifier == null) {
myIdentifier = new IdentifierDt();
}
return myIdentifier;
}
/**
* Sets the value(s) for identifier (Logical identifier of composition (version-independent))
*
*
* Definition:
* Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time
*
*/
public Composition setIdentifier(IdentifierDt theValue) {
myIdentifier = theValue;
return this;
}
/**
* Sets the value for identifier (Logical identifier of composition (version-independent))
*
*
* Definition:
* Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time
*
*/
public Composition setIdentifier( IdentifierUseEnum theUse, String theSystem, String theValue, String theLabel) {
myIdentifier = new IdentifierDt(theUse, theSystem, theValue, theLabel);
return this;
}
/**
* Sets the value for identifier (Logical identifier of composition (version-independent))
*
*
* Definition:
* Logical Identifier for the composition, assigned when created. This identifier stays constant as the composition is changed over time
*
*/
public Composition setIdentifier( String theSystem, String theValue) {
myIdentifier = new IdentifierDt(theSystem, theValue);
return this;
}
/**
* Gets the value(s) for date (Composition editing time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The composition editing time, when the composition was last logically changed by the author
*
*/
public DateTimeDt getDate() {
if (myDate == null) {
myDate = new DateTimeDt();
}
return myDate;
}
/**
* Gets the value(s) for date (Composition editing time).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The composition editing time, when the composition was last logically changed by the author
*
*/
public DateTimeDt getDateElement() {
if (myDate == null) {
myDate = new DateTimeDt();
}
return myDate;
}
/**
* Sets the value(s) for date (Composition editing time)
*
*
* Definition:
* The composition editing time, when the composition was last logically changed by the author
*
*/
public Composition setDate(DateTimeDt theValue) {
myDate = theValue;
return this;
}
/**
* Sets the value for date (Composition editing time)
*
*
* Definition:
* The composition editing time, when the composition was last logically changed by the author
*
*/
public Composition setDate( Date theDate, TemporalPrecisionEnum thePrecision) {
myDate = new DateTimeDt(theDate, thePrecision);
return this;
}
/**
* Sets the value for date (Composition editing time)
*
*
* Definition:
* The composition editing time, when the composition was last logically changed by the author
*
*/
public Composition setDateWithSecondsPrecision( Date theDate) {
myDate = new DateTimeDt(theDate);
return this;
}
/**
* Gets the value(s) for type (Kind of composition (LOINC if possible)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition
*
*/
public CodeableConceptDt getType() {
if (myType == null) {
myType = new CodeableConceptDt();
}
return myType;
}
/**
* Gets the value(s) for type (Kind of composition (LOINC if possible)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition
*
*/
public CodeableConceptDt getTypeElement() {
if (myType == null) {
myType = new CodeableConceptDt();
}
return myType;
}
/**
* Sets the value(s) for type (Kind of composition (LOINC if possible))
*
*
* Definition:
* Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition
*
*/
public Composition setType(CodeableConceptDt theValue) {
myType = theValue;
return this;
}
/**
* Gets the value(s) for class (Categorization of Composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A categorization for the type of the composition. This may be implied by or derived from the code specified in the Composition Type
*
*/
public CodeableConceptDt getClassElement() {
if (myClassElement == null) {
myClassElement = new CodeableConceptDt();
}
return myClassElement;
}
/**
* Gets the value(s) for class (Categorization of Composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A categorization for the type of the composition. This may be implied by or derived from the code specified in the Composition Type
*
*/
public CodeableConceptDt getClassElementElement() {
if (myClassElement == null) {
myClassElement = new CodeableConceptDt();
}
return myClassElement;
}
/**
* Sets the value(s) for class (Categorization of Composition)
*
*
* Definition:
* A categorization for the type of the composition. This may be implied by or derived from the code specified in the Composition Type
*
*/
public Composition setClassElement(CodeableConceptDt theValue) {
myClassElement = theValue;
return this;
}
/**
* Gets the value(s) for title (Human Readable name/title).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Official human-readable label for the composition
*
*/
public StringDt getTitle() {
if (myTitle == null) {
myTitle = new StringDt();
}
return myTitle;
}
/**
* Gets the value(s) for title (Human Readable name/title).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Official human-readable label for the composition
*
*/
public StringDt getTitleElement() {
if (myTitle == null) {
myTitle = new StringDt();
}
return myTitle;
}
/**
* Sets the value(s) for title (Human Readable name/title)
*
*
* Definition:
* Official human-readable label for the composition
*
*/
public Composition setTitle(StringDt theValue) {
myTitle = theValue;
return this;
}
/**
* Sets the value for title (Human Readable name/title)
*
*
* Definition:
* Official human-readable label for the composition
*
*/
public Composition setTitle( String theString) {
myTitle = new StringDt(theString);
return this;
}
/**
* Gets the value(s) for status (preliminary | final | appended | amended | entered in error).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document
*
*/
public BoundCodeDt getStatus() {
if (myStatus == null) {
myStatus = new BoundCodeDt(CompositionStatusEnum.VALUESET_BINDER);
}
return myStatus;
}
/**
* Gets the value(s) for status (preliminary | final | appended | amended | entered in error).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document
*
*/
public BoundCodeDt getStatusElement() {
if (myStatus == null) {
myStatus = new BoundCodeDt(CompositionStatusEnum.VALUESET_BINDER);
}
return myStatus;
}
/**
* Sets the value(s) for status (preliminary | final | appended | amended | entered in error)
*
*
* Definition:
* The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document
*
*/
public Composition setStatus(BoundCodeDt theValue) {
myStatus = theValue;
return this;
}
/**
* Sets the value(s) for status (preliminary | final | appended | amended | entered in error)
*
*
* Definition:
* The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document
*
*/
public Composition setStatus(CompositionStatusEnum theValue) {
getStatus().setValueAsEnum(theValue);
return this;
}
/**
* Gets the value(s) for confidentiality (As defined by affinity domain).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The code specifying the level of confidentiality of the Composition
*
*/
public CodingDt getConfidentiality() {
if (myConfidentiality == null) {
myConfidentiality = new CodingDt();
}
return myConfidentiality;
}
/**
* Gets the value(s) for confidentiality (As defined by affinity domain).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The code specifying the level of confidentiality of the Composition
*
*/
public CodingDt getConfidentialityElement() {
if (myConfidentiality == null) {
myConfidentiality = new CodingDt();
}
return myConfidentiality;
}
/**
* Sets the value(s) for confidentiality (As defined by affinity domain)
*
*
* Definition:
* The code specifying the level of confidentiality of the Composition
*
*/
public Composition setConfidentiality(CodingDt theValue) {
myConfidentiality = theValue;
return this;
}
/**
* Gets the value(s) for subject (Who and/or what the composition is about).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (I.e. machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure)
*
*/
public ResourceReferenceDt getSubject() {
if (mySubject == null) {
mySubject = new ResourceReferenceDt();
}
return mySubject;
}
/**
* Gets the value(s) for subject (Who and/or what the composition is about).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (I.e. machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure)
*
*/
public ResourceReferenceDt getSubjectElement() {
if (mySubject == null) {
mySubject = new ResourceReferenceDt();
}
return mySubject;
}
/**
* Sets the value(s) for subject (Who and/or what the composition is about)
*
*
* Definition:
* Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (I.e. machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure)
*
*/
public Composition setSubject(ResourceReferenceDt theValue) {
mySubject = theValue;
return this;
}
/**
* Gets the value(s) for author (Who and/or what authored the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies who is responsible for the information in the composition. (Not necessarily who typed it in.)
*
*/
public java.util.List getAuthor() {
if (myAuthor == null) {
myAuthor = new java.util.ArrayList();
}
return myAuthor;
}
/**
* Gets the value(s) for author (Who and/or what authored the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies who is responsible for the information in the composition. (Not necessarily who typed it in.)
*
*/
public java.util.List getAuthorElement() {
if (myAuthor == null) {
myAuthor = new java.util.ArrayList();
}
return myAuthor;
}
/**
* Sets the value(s) for author (Who and/or what authored the composition)
*
*
* Definition:
* Identifies who is responsible for the information in the composition. (Not necessarily who typed it in.)
*
*/
public Composition setAuthor(java.util.List theValue) {
myAuthor = theValue;
return this;
}
/**
* Adds and returns a new value for author (Who and/or what authored the composition)
*
*
* Definition:
* Identifies who is responsible for the information in the composition. (Not necessarily who typed it in.)
*
*/
public ResourceReferenceDt addAuthor() {
ResourceReferenceDt newType = new ResourceReferenceDt();
getAuthor().add(newType);
return newType;
}
/**
* Gets the value(s) for attester (Attests to accuracy of composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
public java.util.List getAttester() {
if (myAttester == null) {
myAttester = new java.util.ArrayList();
}
return myAttester;
}
/**
* Gets the value(s) for attester (Attests to accuracy of composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
public java.util.List getAttesterElement() {
if (myAttester == null) {
myAttester = new java.util.ArrayList();
}
return myAttester;
}
/**
* Sets the value(s) for attester (Attests to accuracy of composition)
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
public Composition setAttester(java.util.List theValue) {
myAttester = theValue;
return this;
}
/**
* Adds and returns a new value for attester (Attests to accuracy of composition)
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
public Attester addAttester() {
Attester newType = new Attester();
getAttester().add(newType);
return newType;
}
/**
* Gets the first repetition for attester (Attests to accuracy of composition),
* creating it if it does not already exist.
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
public Attester getAttesterFirstRep() {
if (getAttester().isEmpty()) {
return addAttester();
}
return getAttester().get(0);
}
/**
* Gets the value(s) for custodian (Org which maintains the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information
*
*/
public ResourceReferenceDt getCustodian() {
if (myCustodian == null) {
myCustodian = new ResourceReferenceDt();
}
return myCustodian;
}
/**
* Gets the value(s) for custodian (Org which maintains the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information
*
*/
public ResourceReferenceDt getCustodianElement() {
if (myCustodian == null) {
myCustodian = new ResourceReferenceDt();
}
return myCustodian;
}
/**
* Sets the value(s) for custodian (Org which maintains the composition)
*
*
* Definition:
* Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information
*
*/
public Composition setCustodian(ResourceReferenceDt theValue) {
myCustodian = theValue;
return this;
}
/**
* Gets the value(s) for event (The clinical event/act/item being documented).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The main event/act/item, such as a colonoscopy or an appendectomy, being documented
*
*/
public Event getEvent() {
if (myEvent == null) {
myEvent = new Event();
}
return myEvent;
}
/**
* Gets the value(s) for event (The clinical event/act/item being documented).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The main event/act/item, such as a colonoscopy or an appendectomy, being documented
*
*/
public Event getEventElement() {
if (myEvent == null) {
myEvent = new Event();
}
return myEvent;
}
/**
* Sets the value(s) for event (The clinical event/act/item being documented)
*
*
* Definition:
* The main event/act/item, such as a colonoscopy or an appendectomy, being documented
*
*/
public Composition setEvent(Event theValue) {
myEvent = theValue;
return this;
}
/**
* Gets the value(s) for encounter (Context of the conposition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Describes the clinical encounter or type of care this documentation is associated with.
*
*/
public ResourceReferenceDt getEncounter() {
if (myEncounter == null) {
myEncounter = new ResourceReferenceDt();
}
return myEncounter;
}
/**
* Gets the value(s) for encounter (Context of the conposition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Describes the clinical encounter or type of care this documentation is associated with.
*
*/
public ResourceReferenceDt getEncounterElement() {
if (myEncounter == null) {
myEncounter = new ResourceReferenceDt();
}
return myEncounter;
}
/**
* Sets the value(s) for encounter (Context of the conposition)
*
*
* Definition:
* Describes the clinical encounter or type of care this documentation is associated with.
*
*/
public Composition setEncounter(ResourceReferenceDt theValue) {
myEncounter = theValue;
return this;
}
/**
* Gets the value(s) for section (Composition is broken into sections).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
public java.util.List getSection() {
if (mySection == null) {
mySection = new java.util.ArrayList();
}
return mySection;
}
/**
* Gets the value(s) for section (Composition is broken into sections).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
public java.util.List getSectionElement() {
if (mySection == null) {
mySection = new java.util.ArrayList();
}
return mySection;
}
/**
* Sets the value(s) for section (Composition is broken into sections)
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
public Composition setSection(java.util.List theValue) {
mySection = theValue;
return this;
}
/**
* Adds and returns a new value for section (Composition is broken into sections)
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
public Section addSection() {
Section newType = new Section();
getSection().add(newType);
return newType;
}
/**
* Gets the first repetition for section (Composition is broken into sections),
* creating it if it does not already exist.
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
public Section getSectionFirstRep() {
if (getSection().isEmpty()) {
return addSection();
}
return getSection().get(0);
}
/**
* Block class for child element: Composition.attester (Attests to accuracy of composition)
*
*
* Definition:
* A participant who has attested to the accuracy of the composition/document
*
*/
@Block()
public static class Attester
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="mode", type=CodeDt.class, order=0, min=1, max=Child.MAX_UNLIMITED, summary=true, modifier=false)
@Description(
shortDefinition="personal | professional | legal | official",
formalDefinition="The type of attestation the authenticator offers"
)
private java.util.List> myMode;
@Child(name="time", type=DateTimeDt.class, order=1, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="When composition attested",
formalDefinition="When composition was attested by the party"
)
private DateTimeDt myTime;
@Child(name="party", order=2, min=0, max=1, summary=true, modifier=false, type={
ca.uhn.fhir.model.dstu.resource.Patient.class, ca.uhn.fhir.model.dstu.resource.Practitioner.class, ca.uhn.fhir.model.dstu.resource.Organization.class })
@Description(
shortDefinition="Who attested the composition",
formalDefinition="Who attested the composition in the specified way"
)
private ResourceReferenceDt myParty;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myMode, myTime, myParty);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myMode, myTime, myParty);
}
/**
* Gets the value(s) for mode (personal | professional | legal | official).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public java.util.List> getMode() {
if (myMode == null) {
myMode = new java.util.ArrayList>();
}
return myMode;
}
/**
* Gets the value(s) for mode (personal | professional | legal | official).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public java.util.List> getModeElement() {
if (myMode == null) {
myMode = new java.util.ArrayList>();
}
return myMode;
}
/**
* Sets the value(s) for mode (personal | professional | legal | official)
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public Attester setMode(java.util.List> theValue) {
myMode = theValue;
return this;
}
/**
* Add a value for mode (personal | professional | legal | official) using an enumerated type. This
* is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory
* or contain the desirable codes. If you wish to use codes other than those which are built-in,
* you may also use the {@link #addMode()} method.
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public BoundCodeDt addMode(CompositionAttestationModeEnum theValue) {
BoundCodeDt retVal = new BoundCodeDt(CompositionAttestationModeEnum.VALUESET_BINDER, theValue);
getMode().add(retVal);
return retVal;
}
/**
* Gets the first repetition for mode (personal | professional | legal | official),
* creating it if it does not already exist.
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public BoundCodeDt getModeFirstRep() {
if (getMode().size() == 0) {
addMode();
}
return getMode().get(0);
}
/**
* Add a value for mode (personal | professional | legal | official)
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public BoundCodeDt addMode() {
BoundCodeDt retVal = new BoundCodeDt(CompositionAttestationModeEnum.VALUESET_BINDER);
getMode().add(retVal);
return retVal;
}
/**
* Sets the value(s), and clears any existing value(s) for mode (personal | professional | legal | official)
*
*
* Definition:
* The type of attestation the authenticator offers
*
*/
public Attester setMode(CompositionAttestationModeEnum theValue) {
getMode().clear();
addMode(theValue);
return this;
}
/**
* Gets the value(s) for time (When composition attested).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* When composition was attested by the party
*
*/
public DateTimeDt getTime() {
if (myTime == null) {
myTime = new DateTimeDt();
}
return myTime;
}
/**
* Gets the value(s) for time (When composition attested).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* When composition was attested by the party
*
*/
public DateTimeDt getTimeElement() {
if (myTime == null) {
myTime = new DateTimeDt();
}
return myTime;
}
/**
* Sets the value(s) for time (When composition attested)
*
*
* Definition:
* When composition was attested by the party
*
*/
public Attester setTime(DateTimeDt theValue) {
myTime = theValue;
return this;
}
/**
* Sets the value for time (When composition attested)
*
*
* Definition:
* When composition was attested by the party
*
*/
public Attester setTime( Date theDate, TemporalPrecisionEnum thePrecision) {
myTime = new DateTimeDt(theDate, thePrecision);
return this;
}
/**
* Sets the value for time (When composition attested)
*
*
* Definition:
* When composition was attested by the party
*
*/
public Attester setTimeWithSecondsPrecision( Date theDate) {
myTime = new DateTimeDt(theDate);
return this;
}
/**
* Gets the value(s) for party (Who attested the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Who attested the composition in the specified way
*
*/
public ResourceReferenceDt getParty() {
if (myParty == null) {
myParty = new ResourceReferenceDt();
}
return myParty;
}
/**
* Gets the value(s) for party (Who attested the composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Who attested the composition in the specified way
*
*/
public ResourceReferenceDt getPartyElement() {
if (myParty == null) {
myParty = new ResourceReferenceDt();
}
return myParty;
}
/**
* Sets the value(s) for party (Who attested the composition)
*
*
* Definition:
* Who attested the composition in the specified way
*
*/
public Attester setParty(ResourceReferenceDt theValue) {
myParty = theValue;
return this;
}
}
/**
* Block class for child element: Composition.event (The clinical event/act/item being documented)
*
*
* Definition:
* The main event/act/item, such as a colonoscopy or an appendectomy, being documented
*
*/
@Block()
public static class Event
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="code", type=CodeableConceptDt.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false)
@Description(
shortDefinition="Code(s) that apply to the event being documented",
formalDefinition="This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act."
)
private java.util.List myCode;
@Child(name="period", type=PeriodDt.class, order=1, min=0, max=1, summary=true, modifier=false)
@Description(
shortDefinition="The period covered by the documentation",
formalDefinition="The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time"
)
private PeriodDt myPeriod;
@Child(name="detail", order=2, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false, type={
IResource.class })
@Description(
shortDefinition="Full details for the event(s) the composition consents",
formalDefinition="Full details for the event(s) the composition/documentation consents"
)
private java.util.List myDetail;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myCode, myPeriod, myDetail);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myCode, myPeriod, myDetail);
}
/**
* Gets the value(s) for code (Code(s) that apply to the event being documented).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.
*
*/
public java.util.List getCode() {
if (myCode == null) {
myCode = new java.util.ArrayList();
}
return myCode;
}
/**
* Gets the value(s) for code (Code(s) that apply to the event being documented).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.
*
*/
public java.util.List getCodeElement() {
if (myCode == null) {
myCode = new java.util.ArrayList();
}
return myCode;
}
/**
* Sets the value(s) for code (Code(s) that apply to the event being documented)
*
*
* Definition:
* This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.
*
*/
public Event setCode(java.util.List theValue) {
myCode = theValue;
return this;
}
/**
* Adds and returns a new value for code (Code(s) that apply to the event being documented)
*
*
* Definition:
* This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.
*
*/
public CodeableConceptDt addCode() {
CodeableConceptDt newType = new CodeableConceptDt();
getCode().add(newType);
return newType;
}
/**
* Gets the first repetition for code (Code(s) that apply to the event being documented),
* creating it if it does not already exist.
*
*
* Definition:
* This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.
*
*/
public CodeableConceptDt getCodeFirstRep() {
if (getCode().isEmpty()) {
return addCode();
}
return getCode().get(0);
}
/**
* Gets the value(s) for period (The period covered by the documentation).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time
*
*/
public PeriodDt getPeriod() {
if (myPeriod == null) {
myPeriod = new PeriodDt();
}
return myPeriod;
}
/**
* Gets the value(s) for period (The period covered by the documentation).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time
*
*/
public PeriodDt getPeriodElement() {
if (myPeriod == null) {
myPeriod = new PeriodDt();
}
return myPeriod;
}
/**
* Sets the value(s) for period (The period covered by the documentation)
*
*
* Definition:
* The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time
*
*/
public Event setPeriod(PeriodDt theValue) {
myPeriod = theValue;
return this;
}
/**
* Gets the value(s) for detail (Full details for the event(s) the composition consents).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Full details for the event(s) the composition/documentation consents
*
*/
public java.util.List getDetail() {
if (myDetail == null) {
myDetail = new java.util.ArrayList();
}
return myDetail;
}
/**
* Gets the value(s) for detail (Full details for the event(s) the composition consents).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Full details for the event(s) the composition/documentation consents
*
*/
public java.util.List getDetailElement() {
if (myDetail == null) {
myDetail = new java.util.ArrayList();
}
return myDetail;
}
/**
* Sets the value(s) for detail (Full details for the event(s) the composition consents)
*
*
* Definition:
* Full details for the event(s) the composition/documentation consents
*
*/
public Event setDetail(java.util.List theValue) {
myDetail = theValue;
return this;
}
/**
* Adds and returns a new value for detail (Full details for the event(s) the composition consents)
*
*
* Definition:
* Full details for the event(s) the composition/documentation consents
*
*/
public ResourceReferenceDt addDetail() {
ResourceReferenceDt newType = new ResourceReferenceDt();
getDetail().add(newType);
return newType;
}
}
/**
* Block class for child element: Composition.section (Composition is broken into sections)
*
*
* Definition:
* The root of the sections that make up the composition
*
*/
@Block()
public static class Section
extends BaseIdentifiableElement implements IResourceBlock {
@Child(name="title", type=StringDt.class, order=0, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Label for section",
formalDefinition="The heading for this particular section. This will be part of the rendered content for the document."
)
private StringDt myTitle;
@Child(name="code", type=CodeableConceptDt.class, order=1, min=0, max=1, summary=false, modifier=false)
@Description(
shortDefinition="Classification of section (recommended)",
formalDefinition="A code identifying the kind of content contained within the section"
)
private CodeableConceptDt myCode;
@Child(name="subject", order=2, min=0, max=1, summary=false, modifier=true, type={
ca.uhn.fhir.model.dstu.resource.Patient.class, ca.uhn.fhir.model.dstu.resource.Group.class, ca.uhn.fhir.model.dstu.resource.Device.class })
@Description(
shortDefinition="If section different to composition",
formalDefinition="Identifies the primary subject of the section."
)
private ResourceReferenceDt mySubject;
@Child(name="content", order=3, min=0, max=1, summary=false, modifier=false, type={
IResource.class })
@Description(
shortDefinition="The actual data for the section",
formalDefinition="Identifies the discrete data that provides the content for the section."
)
private ResourceReferenceDt myContent;
@Child(name="section", type=Section.class, order=4, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false)
@Description(
shortDefinition="Nested Section",
formalDefinition="A nested sub-section within this section"
)
private java.util.List mySection;
@Override
public boolean isEmpty() {
return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myTitle, myCode, mySubject, myContent, mySection);
}
@Override
public List getAllPopulatedChildElementsOfType(Class theType) {
return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myTitle, myCode, mySubject, myContent, mySection);
}
/**
* Gets the value(s) for title (Label for section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The heading for this particular section. This will be part of the rendered content for the document.
*
*/
public StringDt getTitle() {
if (myTitle == null) {
myTitle = new StringDt();
}
return myTitle;
}
/**
* Gets the value(s) for title (Label for section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* The heading for this particular section. This will be part of the rendered content for the document.
*
*/
public StringDt getTitleElement() {
if (myTitle == null) {
myTitle = new StringDt();
}
return myTitle;
}
/**
* Sets the value(s) for title (Label for section)
*
*
* Definition:
* The heading for this particular section. This will be part of the rendered content for the document.
*
*/
public Section setTitle(StringDt theValue) {
myTitle = theValue;
return this;
}
/**
* Sets the value for title (Label for section)
*
*
* Definition:
* The heading for this particular section. This will be part of the rendered content for the document.
*
*/
public Section setTitle( String theString) {
myTitle = new StringDt(theString);
return this;
}
/**
* Gets the value(s) for code (Classification of section (recommended)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code identifying the kind of content contained within the section
*
*/
public CodeableConceptDt getCode() {
if (myCode == null) {
myCode = new CodeableConceptDt();
}
return myCode;
}
/**
* Gets the value(s) for code (Classification of section (recommended)).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A code identifying the kind of content contained within the section
*
*/
public CodeableConceptDt getCodeElement() {
if (myCode == null) {
myCode = new CodeableConceptDt();
}
return myCode;
}
/**
* Sets the value(s) for code (Classification of section (recommended))
*
*
* Definition:
* A code identifying the kind of content contained within the section
*
*/
public Section setCode(CodeableConceptDt theValue) {
myCode = theValue;
return this;
}
/**
* Gets the value(s) for subject (If section different to composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the primary subject of the section.
*
*/
public ResourceReferenceDt getSubject() {
if (mySubject == null) {
mySubject = new ResourceReferenceDt();
}
return mySubject;
}
/**
* Gets the value(s) for subject (If section different to composition).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the primary subject of the section.
*
*/
public ResourceReferenceDt getSubjectElement() {
if (mySubject == null) {
mySubject = new ResourceReferenceDt();
}
return mySubject;
}
/**
* Sets the value(s) for subject (If section different to composition)
*
*
* Definition:
* Identifies the primary subject of the section.
*
*/
public Section setSubject(ResourceReferenceDt theValue) {
mySubject = theValue;
return this;
}
/**
* Gets the value(s) for content (The actual data for the section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the discrete data that provides the content for the section.
*
*/
public ResourceReferenceDt getContent() {
if (myContent == null) {
myContent = new ResourceReferenceDt();
}
return myContent;
}
/**
* Gets the value(s) for content (The actual data for the section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* Identifies the discrete data that provides the content for the section.
*
*/
public ResourceReferenceDt getContentElement() {
if (myContent == null) {
myContent = new ResourceReferenceDt();
}
return myContent;
}
/**
* Sets the value(s) for content (The actual data for the section)
*
*
* Definition:
* Identifies the discrete data that provides the content for the section.
*
*/
public Section setContent(ResourceReferenceDt theValue) {
myContent = theValue;
return this;
}
/**
* Gets the value(s) for section (Nested Section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A nested sub-section within this section
*
*/
public java.util.List getSection() {
if (mySection == null) {
mySection = new java.util.ArrayList();
}
return mySection;
}
/**
* Gets the value(s) for section (Nested Section).
* creating it if it does
* not exist. Will not return null
.
*
*
* Definition:
* A nested sub-section within this section
*
*/
public java.util.List getSectionElement() {
if (mySection == null) {
mySection = new java.util.ArrayList();
}
return mySection;
}
/**
* Sets the value(s) for section (Nested Section)
*
*
* Definition:
* A nested sub-section within this section
*
*/
public Section setSection(java.util.List theValue) {
mySection = theValue;
return this;
}
/**
* Adds and returns a new value for section (Nested Section)
*
*
* Definition:
* A nested sub-section within this section
*
*/
public Section addSection() {
Section newType = new Section();
getSection().add(newType);
return newType;
}
/**
* Gets the first repetition for section (Nested Section),
* creating it if it does not already exist.
*
*
* Definition:
* A nested sub-section within this section
*
*/
public Section getSectionFirstRep() {
if (getSection().isEmpty()) {
return addSection();
}
return getSection().get(0);
}
}
@Override
public String getResourceName() {
return "Composition";
}
public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() {
return ca.uhn.fhir.context.FhirVersionEnum.DSTU1;
}
}