blob: 907520e948657d50b3b41e9de12ea105d0082f4f [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2009, 2011 IBM Corporation 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:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.mdht.uml.cda;
import org.eclipse.emf.common.util.EList;
import org.eclipse.mdht.uml.hl7.rim.Act;
import org.eclipse.mdht.uml.hl7.vocab.x_ActRelationshipEntryRelationship;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Clinical Statement</b></em>'.
* <!-- end-user-doc -->
*
*
* @see org.eclipse.mdht.uml.cda.CDAPackage#getClinicalStatement()
* @model abstract="true"
* @generated
*/
public interface ClinicalStatement extends Act {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model actRequired="true" actOrdered="false"
* @generated
*/
void addAct(org.eclipse.mdht.uml.cda.Act act);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model encounterRequired="true" encounterOrdered="false"
* @generated
*/
void addEncounter(Encounter encounter);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model observationRequired="true" observationOrdered="false"
* @generated
*/
void addObservation(Observation observation);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model observationMediaRequired="true" observationMediaOrdered="false"
* @generated
*/
void addObservationMedia(ObservationMedia observationMedia);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model organizerRequired="true" organizerOrdered="false"
* @generated
*/
void addOrganizer(Organizer organizer);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model procedureRequired="true" procedureOrdered="false"
* @generated
*/
void addProcedure(Procedure procedure);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model regionOfInterestRequired="true" regionOfInterestOrdered="false"
* @generated
*/
void addRegionOfInterest(RegionOfInterest regionOfInterest);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model substanceAdministrationRequired="true" substanceAdministrationOrdered="false"
* @generated
*/
void addSubstanceAdministration(SubstanceAdministration substanceAdministration);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model supplyRequired="true" supplyOrdered="false"
* @generated
*/
void addSupply(Supply supply);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<org.eclipse.mdht.uml.cda.Act> getActs();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" required="true" ordered="false"
* @generated
*/
ClinicalDocument getClinicalDocument();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<Encounter> getEncounters();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model ordered="false" typeCodeRequired="true" typeCodeOrdered="false" targetClassRequired="true" targetClassOrdered="false"
* @generated
*/
EList<ClinicalStatement> getEntryRelationshipTargets(x_ActRelationshipEntryRelationship typeCode,
Object targetClass);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model ordered="false" targetClassRequired="true" targetClassOrdered="false"
* @generated
*/
EList<ClinicalStatement> getEntryRelationshipTargets(Object targetClass);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<Observation> getObservations();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<ObservationMedia> getObservationMedia();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<Organizer> getOrganizers();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<Procedure> getProcedures();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<RegionOfInterest> getRegionsOfInterest();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" required="true" ordered="false"
* @generated
*/
Section getSection();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<SubstanceAdministration> getSubstanceAdministrations();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" unique="false" ordered="false"
* @generated
*/
EList<Supply> getSupplies();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getActs()-&gt;exists(act : cda::Act | act.hasTemplateId(templateId))'"
* @generated
*/
boolean hasActTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" codeDataType="org.eclipse.uml2.types.String" codeRequired="true" codeOrdered="false" codeSystemDataType="org.eclipse.uml2.types.String" codeSystemRequired="true" codeSystemOrdered="false" codeSystemNameDataType="org.eclipse.uml2.types.String" codeSystemNameRequired="true" codeSystemNameOrdered="false"
* @generated
*/
boolean hasCode(String code, String codeSystem, String codeSystemName);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getEncounters()-&gt;exists(enc : cda::Encounter | enc.hasTemplateId(templateId))'"
* @generated
*/
boolean hasEncounterTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getObservationMedia()-&gt;exists(media : cda::ObservationMedia | media.hasTemplateId(templateId))'"
* @generated
*/
boolean hasObservationMediaTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getObservations()-&gt;exists(obs : cda::Observation | obs.hasTemplateId(templateId))'"
* @generated
*/
boolean hasObservationTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getOrganizers()-&gt;exists(org : cda::Organizer | org.hasTemplateId(templateId))'"
* @generated
*/
boolean hasOrganizerTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getProcedures()-&gt;exists(proc : cda::Procedure | proc.hasTemplateId(templateId))'"
* @generated
*/
boolean hasProcedureTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getRegionsOfInterest()-&gt;exists(reg : cda::RegionOfInterest | reg.hasTemplateId(templateId))'"
* @generated
*/
boolean hasRegionOfInterestTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getSubstanceAdministrations()-&gt;exists(sub : cda::SubstanceAdministration | sub.hasTemplateId(templateId))'"
* @generated
*/
boolean hasSubstanceAdministrationTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getSupplies()-&gt;exists(sup : cda::Supply | sup.hasTemplateId(templateId))'"
* @generated
*/
boolean hasSupplyTemplate(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false" templateIdDataType="org.eclipse.uml2.types.String" templateIdRequired="true" templateIdOrdered="false"
* @generated
*/
boolean hasTemplateId(String templateId);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" ordered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.participant.participantRole-&gt;excluding(null)'"
* @generated
*/
EList<ParticipantRole> getParticipantRoles();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation" ordered="false"
* annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.performer.assignedEntity-&gt;excluding(null)'"
* @generated
*/
EList<AssignedEntity> getAssignedEntities();
} // ClinicalStatement