All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openhealthtools.mdht.uml.cda.ccd.SupplyActivity Maven / Gradle / Ivy

The newest version!
/*******************************************************************************
 * Copyright (c) 2009, 2012 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.openhealthtools.mdht.uml.cda.ccd;

import java.util.Map;

import org.eclipse.emf.common.util.DiagnosticChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.openhealthtools.mdht.emf.runtime.util.Initializer;
import org.openhealthtools.mdht.uml.cda.Supply;

/**
 * 
 * A representation of the model object 'Supply Activity'.
 * 
 *
 *
 * @see org.openhealthtools.mdht.uml.cda.ccd.CCDPackage#getSupplyActivity()
 * @model annotation="http://www.openhealthtools.org/mdht/uml/cda/annotation constraints.validation.error='SupplyActivityTemplateId SupplyActivityMoodCode SupplyActivityInformationSource SupplyActivityId' templateId.root='2.16.840.1.113883.10.20.1.34' constraints.validation.info='SupplyActivityHasAuthor SupplyActivityHasPerformer SupplyActivityHasParticipantLocation SupplyActivityHasProduct SupplyActivityQuantity SupplyActivityRepeatNumber SupplyActivityMedicationStatusObservation SupplyActivityFulfillmentInstruction SupplyActivityProductInstance' constraints.validation.warning='SupplyActivityStatusCode SupplyActivityEffectiveTime'"
 * @generated
 */
public interface SupplyActivity extends Supply {
	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.moodCode=vocab::x_DocumentSubstanceMood::EVN or self.moodCode=vocab::x_DocumentSubstanceMood::INT '"
	* @generated
	*/
	boolean validateSupplyActivityMoodCode(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='not self.author->isEmpty()'"
	* @generated
	*/
	boolean validateSupplyActivityHasAuthor(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='not self.performer->isEmpty()'"
	* @generated
	*/
	boolean validateSupplyActivityHasPerformer(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.participant->one(part : cda::Participant2 | part.typeCode = vocab::ParticipationType::LOC)'"
	* @generated
	*/
	boolean validateSupplyActivityHasParticipantLocation(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='not self.informant->isEmpty() \r\nor not self.getSection().informant->isEmpty()\r\nor not self.getClinicalDocument().informant->isEmpty()\r\nor self.reference->exists(ref : cda::Reference | ref.typeCode = vocab::x_ActRelationshipExternalReference::XCRPT)\r\nor (self.entryRelationship->exists(rel : cda::EntryRelationship | \r\n   rel.typeCode = vocab::x_ActRelationshipEntryRelationship::REFR\r\n   and rel.observation.code.code = \'48766-0\'))'"
	* @generated
	*/
	boolean validateSupplyActivityInformationSource(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='not self.product.oclIsUndefined() and self.product.oclIsKindOf(cda::Product)'"
	* @generated
	*/
	boolean validateSupplyActivityHasProduct(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.templateId->exists(id : datatypes::II | id.root = \'2.16.840.1.113883.10.20.1.34\')'"
	* @generated
	*/
	boolean validateSupplyActivityTemplateId(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='(self.id->isEmpty() or self.id->exists(element | element.isNullFlavorUndefined())) implies (not self.id->isEmpty())'"
	* @generated
	*/
	boolean validateSupplyActivityId(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='(self.statusCode.oclIsUndefined() or self.statusCode.isNullFlavorUndefined()) implies (not self.statusCode.oclIsUndefined())'"
	* @generated
	*/
	boolean validateSupplyActivityStatusCode(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='(self.effectiveTime->isEmpty() or self.effectiveTime->exists(element | element.isNullFlavorUndefined())) implies (self.effectiveTime->size() = 1)'"
	* @generated
	*/
	boolean validateSupplyActivityEffectiveTime(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='(self.quantity.oclIsUndefined() or self.quantity.isNullFlavorUndefined()) implies (not self.quantity.oclIsUndefined())'"
	* @generated
	*/
	boolean validateSupplyActivityQuantity(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='(self.repeatNumber.oclIsUndefined() or self.repeatNumber.isNullFlavorUndefined()) implies (not self.repeatNumber.oclIsUndefined())'"
	* @generated
	*/
	boolean validateSupplyActivityRepeatNumber(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.entryRelationship->one(entryRelationship : cda::EntryRelationship | not entryRelationship.observation.oclIsUndefined() and entryRelationship.observation.oclIsKindOf(ccd::MedicationStatusObservation))'"
	* @generated
	*/
	boolean validateSupplyActivityMedicationStatusObservation(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.entryRelationship->exists(entryRelationship : cda::EntryRelationship | not entryRelationship.act.oclIsUndefined() and entryRelationship.act.oclIsKindOf(ccd::FulfillmentInstruction) and entryRelationship.typeCode = vocab::x_ActRelationshipEntryRelationship::SUBJ)'"
	* @generated
	*/
	boolean validateSupplyActivityFulfillmentInstruction(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* 
	* @param diagnostics The chain of diagnostics to which problems are to be appended.
	* @param context The cache of context-specific information.
	* 
	* @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.participant->exists(participant : cda::Participant2 | not participant.participantRole.oclIsUndefined() and participant.participantRole.oclIsKindOf(ccd::ProductInstance))'"
	* @generated
	*/
	boolean validateSupplyActivityProductInstance(DiagnosticChain diagnostics, Map context);

	/**
	* 
	 * 
	* @model kind="operation" required="true" ordered="false"
	*        annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getObservations()->select(observation : cda::Observation | not observation.oclIsUndefined() and observation.oclIsKindOf(ccd::MedicationStatusObservation))->asSequence()->any(true).oclAsType(ccd::MedicationStatusObservation)'"
	* @generated
	*/
	MedicationStatusObservation getMedicationStatusObservation();

	/**
	* 
	 * 
	* @model kind="operation" required="true" ordered="false"
	*        annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getActs()->select(act : cda::Act | not act.oclIsUndefined() and act.oclIsKindOf(ccd::FulfillmentInstruction)).oclAsType(ccd::FulfillmentInstruction)'"
	* @generated
	*/
	EList getFulfillmentInstructions();

	/**
	* 
	 * 
	* @model kind="operation" required="true" ordered="false"
	*        annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.getParticipantRoles()->select(participantRole : cda::ParticipantRole | not participantRole.oclIsUndefined() and participantRole.oclIsKindOf(ccd::ProductInstance)).oclAsType(ccd::ProductInstance)'"
	* @generated
	*/
	EList getProductInstances();

	/**
	* 
	 * 
	* @generated
	*/
	public SupplyActivity init();

	/**
	 * 
	   * 
	 * @generated
	 */
	public SupplyActivity init(Iterable> initializers);
} // SupplyActivity




© 2015 - 2025 Weber Informatics LLC | Privacy Policy