/**
 */
package org.etsi.mts.tdl.structuredobjectives;

import org.eclipse.emf.common.util.EList;

import org.etsi.mts.tdl.Comment;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Element</b></em>'.
 * <!-- end-user-doc -->
 *
 *
 * @see org.etsi.mts.tdl.structuredobjectives.StructuredObjectivesPackage#getElement()
 * @model
 * @generated
 */
public interface Element extends org.etsi.mts.tdl.Element
{
	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model kind="operation"
	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='  \n            if (not self.container().oclIsUndefined()) then\n                if (self.container().oclIsKindOf(StructuredTestObjective)) then\n                    self.container().oclAsType(StructuredTestObjective)\n                else\n                    self.container().oclAsType(Element).getTestObjective()\n                endif\n            else \n                null\n            endif'"
	 * @generated
	 */
	StructuredTestObjective getTestObjective();

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model required="true"
	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self-&gt;closure(oclContents())-&gt;includes(object)'"
	 * @generated
	 */
	boolean contains(Element object);

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model kind="operation" ordered="false"
	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self-&gt;closure(oclContents())-&gt;select(e | \n\te.oclIsKindOf(tdl::Comment) and not e.oclAsType(tdl::Comment).name.oclIsUndefined()\n).oclAsType(tdl::Comment)-&gt;asSet()'"
	 * @generated
	 */
	EList<Comment> getNotes();

} // Element
