blob: e0b90694ebf7b15a628889cfffc39cb740fdbb8a [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2016 David Carlson and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* David Carlson (Clinical Cloud Solutions, LLC) - initial API and implementation
*******************************************************************************/
/**
*/
package org.eclipse.mdht.uml.fhir.core.resource;
import org.eclipse.emf.common.util.EList;
import org.eclipse.mdht.uml.fhir.core.datatype.Annotation;
import org.eclipse.mdht.uml.fhir.core.datatype.Base;
import org.eclipse.mdht.uml.fhir.core.datatype.Code;
import org.eclipse.mdht.uml.fhir.core.datatype.CodeableConcept;
import org.eclipse.mdht.uml.fhir.core.datatype.DataType;
import org.eclipse.mdht.uml.fhir.core.datatype.Identifier;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Procedure</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
*
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getIdentifiers <em>Identifier</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getSubject <em>Subject</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getStatus <em>Status</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getCategory <em>Category</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getCode <em>Code</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getNotPerformed <em>Not Performed</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getReasonNotPerformeds <em>Reason Not Performed</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getBodySites <em>Body Site</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getReasonx <em>Reasonx</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getPerformers <em>Performer</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getPerformedx <em>Performedx</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getEncounter <em>Encounter</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getLocation <em>Location</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getOutcome <em>Outcome</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getReports <em>Report</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getComplications <em>Complication</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getFollowUps <em>Follow Up</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getRequest <em>Request</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getNotes <em>Notes</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getFocalDevices <em>Focal Device</em>}</li>
* <li>{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getUseds <em>Used</em>}</li>
* </ul>
*
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure()
* @model
* @generated
*/
public interface Procedure extends DomainResource {
/**
* Returns the value of the '<em><b>Identifier</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.Identifier}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Identifier</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Identifier</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Identifier()
* @model
* @generated
*/
EList<Identifier> getIdentifiers();
/**
* Returns the value of the '<em><b>Subject</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Subject</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Subject</em>' reference.
* @see #setSubject(Resource)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Subject()
* @model required="true"
* @generated
*/
Resource getSubject();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getSubject <em>Subject</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Subject</em>' reference.
* @see #getSubject()
* @generated
*/
void setSubject(Resource value);
/**
* Returns the value of the '<em><b>Status</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Status</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Status</em>' reference.
* @see #setStatus(Code)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Status()
* @model required="true"
* @generated
*/
Code getStatus();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getStatus <em>Status</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Status</em>' reference.
* @see #getStatus()
* @generated
*/
void setStatus(Code value);
/**
* Returns the value of the '<em><b>Category</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Category</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Category</em>' reference.
* @see #setCategory(CodeableConcept)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Category()
* @model
* @generated
*/
CodeableConcept getCategory();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getCategory <em>Category</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Category</em>' reference.
* @see #getCategory()
* @generated
*/
void setCategory(CodeableConcept value);
/**
* Returns the value of the '<em><b>Code</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Code</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Code</em>' reference.
* @see #setCode(CodeableConcept)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Code()
* @model required="true"
* @generated
*/
CodeableConcept getCode();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getCode <em>Code</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Code</em>' reference.
* @see #getCode()
* @generated
*/
void setCode(CodeableConcept value);
/**
* Returns the value of the '<em><b>Not Performed</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Not Performed</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Not Performed</em>' reference.
* @see #setNotPerformed(org.eclipse.mdht.uml.fhir.core.datatype.Boolean)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_NotPerformed()
* @model
* @generated
*/
org.eclipse.mdht.uml.fhir.core.datatype.Boolean getNotPerformed();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getNotPerformed <em>Not Performed</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Not Performed</em>' reference.
* @see #getNotPerformed()
* @generated
*/
void setNotPerformed(org.eclipse.mdht.uml.fhir.core.datatype.Boolean value);
/**
* Returns the value of the '<em><b>Reason Not Performed</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.CodeableConcept}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Reason Not Performed</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Reason Not Performed</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_ReasonNotPerformed()
* @model
* @generated
*/
EList<CodeableConcept> getReasonNotPerformeds();
/**
* Returns the value of the '<em><b>Body Site</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.CodeableConcept}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Body Site</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Body Site</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_BodySite()
* @model
* @generated
*/
EList<CodeableConcept> getBodySites();
/**
* Returns the value of the '<em><b>Reasonx</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Reasonx</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Reasonx</em>' reference.
* @see #setReasonx(Base)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Reasonx()
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='reason[x]'"
* @generated
*/
Base getReasonx();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getReasonx <em>Reasonx</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Reasonx</em>' reference.
* @see #getReasonx()
* @generated
*/
void setReasonx(Base value);
/**
* Returns the value of the '<em><b>Performer</b></em>' containment reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.resource.ProcedurePerformer}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Performer</em>' containment reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Performer</em>' containment reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Performer()
* @model containment="true"
* @generated
*/
EList<ProcedurePerformer> getPerformers();
/**
* Returns the value of the '<em><b>Performedx</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Performedx</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Performedx</em>' reference.
* @see #setPerformedx(DataType)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Performedx()
* @model annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='performed[x]'"
* @generated
*/
DataType getPerformedx();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getPerformedx <em>Performedx</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Performedx</em>' reference.
* @see #getPerformedx()
* @generated
*/
void setPerformedx(DataType value);
/**
* Returns the value of the '<em><b>Encounter</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Encounter</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Encounter</em>' reference.
* @see #setEncounter(Encounter)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Encounter()
* @model
* @generated
*/
Encounter getEncounter();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getEncounter <em>Encounter</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Encounter</em>' reference.
* @see #getEncounter()
* @generated
*/
void setEncounter(Encounter value);
/**
* Returns the value of the '<em><b>Location</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Location</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Location</em>' reference.
* @see #setLocation(Location)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Location()
* @model
* @generated
*/
Location getLocation();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getLocation <em>Location</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Location</em>' reference.
* @see #getLocation()
* @generated
*/
void setLocation(Location value);
/**
* Returns the value of the '<em><b>Outcome</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Outcome</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Outcome</em>' reference.
* @see #setOutcome(CodeableConcept)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Outcome()
* @model
* @generated
*/
CodeableConcept getOutcome();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getOutcome <em>Outcome</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Outcome</em>' reference.
* @see #getOutcome()
* @generated
*/
void setOutcome(CodeableConcept value);
/**
* Returns the value of the '<em><b>Report</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.resource.DiagnosticReport}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Report</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Report</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Report()
* @model
* @generated
*/
EList<DiagnosticReport> getReports();
/**
* Returns the value of the '<em><b>Complication</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.CodeableConcept}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Complication</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Complication</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Complication()
* @model
* @generated
*/
EList<CodeableConcept> getComplications();
/**
* Returns the value of the '<em><b>Follow Up</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.CodeableConcept}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Follow Up</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Follow Up</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_FollowUp()
* @model
* @generated
*/
EList<CodeableConcept> getFollowUps();
/**
* Returns the value of the '<em><b>Request</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Request</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Request</em>' reference.
* @see #setRequest(Resource)
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Request()
* @model
* @generated
*/
Resource getRequest();
/**
* Sets the value of the '{@link org.eclipse.mdht.uml.fhir.core.resource.Procedure#getRequest <em>Request</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Request</em>' reference.
* @see #getRequest()
* @generated
*/
void setRequest(Resource value);
/**
* Returns the value of the '<em><b>Notes</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.datatype.Annotation}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Notes</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Notes</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Notes()
* @model
* @generated
*/
EList<Annotation> getNotes();
/**
* Returns the value of the '<em><b>Focal Device</b></em>' containment reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.resource.ProcedureFocalDevice}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Focal Device</em>' containment reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Focal Device</em>' containment reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_FocalDevice()
* @model containment="true"
* @generated
*/
EList<ProcedureFocalDevice> getFocalDevices();
/**
* Returns the value of the '<em><b>Used</b></em>' reference list.
* The list contents are of type {@link org.eclipse.mdht.uml.fhir.core.resource.Resource}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Used</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Used</em>' reference list.
* @see org.eclipse.mdht.uml.fhir.core.resource.FhirResourcePackage#getProcedure_Used()
* @model
* @generated
*/
EList<Resource> getUseds();
} // Procedure