/**
   * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon
   * which it depends.
   *
   * <p>This method is used to initialize {@link Ap_runtime_constraintsPackage#eINSTANCE} when that
   * field is accessed. Clients should not invoke it directly. Instead, they should simply access
   * that field to obtain the package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @see #eNS_URI
   * @see #createPackageContents()
   * @see #initializePackageContents()
   * @generated
   */
  public static Ap_runtime_constraintsPackage init() {
    if (isInited)
      return (Ap_runtime_constraintsPackage)
          EPackage.Registry.INSTANCE.getEPackage(Ap_runtime_constraintsPackage.eNS_URI);

    // Obtain or create and register package
    Ap_runtime_constraintsPackageImpl theAp_runtime_constraintsPackage =
        (Ap_runtime_constraintsPackageImpl)
            (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof Ap_runtime_constraintsPackageImpl
                ? EPackage.Registry.INSTANCE.get(eNS_URI)
                : new Ap_runtime_constraintsPackageImpl());

    isInited = true;

    // Initialize simple dependencies
    EcorePackage.eINSTANCE.eClass();

    // Obtain or create and register interdependencies
    AbapmappingPackageImpl theAbapmappingPackage =
        (AbapmappingPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(AbapmappingPackage.eNS_URI)
                    instanceof AbapmappingPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(AbapmappingPackage.eNS_URI)
                : AbapmappingPackage.eINSTANCE);
    AbapdictionaryPackageImpl theAbapdictionaryPackage =
        (AbapdictionaryPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(AbapdictionaryPackage.eNS_URI)
                    instanceof AbapdictionaryPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(AbapdictionaryPackage.eNS_URI)
                : AbapdictionaryPackage.eINSTANCE);
    BpdmPackageImpl theBpdmPackage =
        (BpdmPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(BpdmPackage.eNS_URI) instanceof BpdmPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(BpdmPackage.eNS_URI)
                : BpdmPackage.eINSTANCE);
    BusinesstasksPackageImpl theBusinesstasksPackage =
        (BusinesstasksPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(BusinesstasksPackage.eNS_URI)
                    instanceof BusinesstasksPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(BusinesstasksPackage.eNS_URI)
                : BusinesstasksPackage.eINSTANCE);
    ActionsPackageImpl theActionsPackage =
        (ActionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ActionsPackage.eNS_URI)
                    instanceof ActionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ActionsPackage.eNS_URI)
                : ActionsPackage.eINSTANCE);
    RulesPackageImpl theRulesPackage =
        (RulesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(RulesPackage.eNS_URI)
                    instanceof RulesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(RulesPackage.eNS_URI)
                : RulesPackage.eINSTANCE);
    EventsPackageImpl theEventsPackage =
        (EventsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(EventsPackage.eNS_URI)
                    instanceof EventsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(EventsPackage.eNS_URI)
                : EventsPackage.eINSTANCE);
    TransactionsPackageImpl theTransactionsPackage =
        (TransactionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(TransactionsPackage.eNS_URI)
                    instanceof TransactionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(TransactionsPackage.eNS_URI)
                : TransactionsPackage.eINSTANCE);
    Status_and_action_oldPackageImpl theStatus_and_action_oldPackage =
        (Status_and_action_oldPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(Status_and_action_oldPackage.eNS_URI)
                    instanceof Status_and_action_oldPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(Status_and_action_oldPackage.eNS_URI)
                : Status_and_action_oldPackage.eINSTANCE);
    DesignPackageImpl theDesignPackage =
        (DesignPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(DesignPackage.eNS_URI)
                    instanceof DesignPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(DesignPackage.eNS_URI)
                : DesignPackage.eINSTANCE);
    AssemblyPackageImpl theAssemblyPackage =
        (AssemblyPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(AssemblyPackage.eNS_URI)
                    instanceof AssemblyPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(AssemblyPackage.eNS_URI)
                : AssemblyPackage.eINSTANCE);
    BusinessconfigurationPackageImpl theBusinessconfigurationPackage =
        (BusinessconfigurationPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(BusinessconfigurationPackage.eNS_URI)
                    instanceof BusinessconfigurationPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(BusinessconfigurationPackage.eNS_URI)
                : BusinessconfigurationPackage.eINSTANCE);
    ExperimentalPackageImpl theExperimentalPackage =
        (ExperimentalPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ExperimentalPackage.eNS_URI)
                    instanceof ExperimentalPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ExperimentalPackage.eNS_URI)
                : ExperimentalPackage.eINSTANCE);
    Context_driversPackageImpl theContext_driversPackage =
        (Context_driversPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(Context_driversPackage.eNS_URI)
                    instanceof Context_driversPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(Context_driversPackage.eNS_URI)
                : Context_driversPackage.eINSTANCE);
    ClassesPackageImpl theClassesPackage =
        (ClassesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ClassesPackage.eNS_URI)
                    instanceof ClassesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ClassesPackage.eNS_URI)
                : ClassesPackage.eINSTANCE);
    ConstraintsPackageImpl theConstraintsPackage =
        (ConstraintsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ConstraintsPackage.eNS_URI)
                    instanceof ConstraintsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ConstraintsPackage.eNS_URI)
                : ConstraintsPackage.eINSTANCE);
    QuantitystructurePackageImpl theQuantitystructurePackage =
        (QuantitystructurePackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(QuantitystructurePackage.eNS_URI)
                    instanceof QuantitystructurePackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(QuantitystructurePackage.eNS_URI)
                : QuantitystructurePackage.eINSTANCE);
    TimedependencyPackageImpl theTimedependencyPackage =
        (TimedependencyPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(TimedependencyPackage.eNS_URI)
                    instanceof TimedependencyPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(TimedependencyPackage.eNS_URI)
                : TimedependencyPackage.eINSTANCE);
    DocumentsPackageImpl theDocumentsPackage =
        (DocumentsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(DocumentsPackage.eNS_URI)
                    instanceof DocumentsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(DocumentsPackage.eNS_URI)
                : DocumentsPackage.eINSTANCE);
    GenericsPackageImpl theGenericsPackage =
        (GenericsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(GenericsPackage.eNS_URI)
                    instanceof GenericsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(GenericsPackage.eNS_URI)
                : GenericsPackage.eINSTANCE);
    TuplesPackageImpl theTuplesPackage =
        (TuplesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(TuplesPackage.eNS_URI)
                    instanceof TuplesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(TuplesPackage.eNS_URI)
                : TuplesPackage.eINSTANCE);
    ExpressionsPackageImpl theExpressionsPackage =
        (ExpressionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI)
                    instanceof ExpressionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI)
                : ExpressionsPackage.eINSTANCE);
    LiteralsPackageImpl theLiteralsPackage =
        (LiteralsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(LiteralsPackage.eNS_URI)
                    instanceof LiteralsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(LiteralsPackage.eNS_URI)
                : LiteralsPackage.eINSTANCE);
    CollectionexpressionsPackageImpl theCollectionexpressionsPackage =
        (CollectionexpressionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(CollectionexpressionsPackage.eNS_URI)
                    instanceof CollectionexpressionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(CollectionexpressionsPackage.eNS_URI)
                : CollectionexpressionsPackage.eINSTANCE);
    FpPackageImpl theFpPackage =
        (FpPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(FpPackage.eNS_URI) instanceof FpPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(FpPackage.eNS_URI)
                : FpPackage.eINSTANCE);
    QueryPackageImpl theQueryPackage =
        (QueryPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI)
                    instanceof QueryPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI)
                : QueryPackage.eINSTANCE);
    AnalyticsPackageImpl theAnalyticsPackage =
        (AnalyticsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(AnalyticsPackage.eNS_URI)
                    instanceof AnalyticsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(AnalyticsPackage.eNS_URI)
                : AnalyticsPackage.eINSTANCE);
    ProcessintegrationPackageImpl theProcessintegrationPackage =
        (ProcessintegrationPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ProcessintegrationPackage.eNS_URI)
                    instanceof ProcessintegrationPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ProcessintegrationPackage.eNS_URI)
                : ProcessintegrationPackage.eINSTANCE);
    XsdPackageImpl theXsdPackage =
        (XsdPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(XsdPackage.eNS_URI) instanceof XsdPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(XsdPackage.eNS_URI)
                : XsdPackage.eINSTANCE);
    BindingPackageImpl theBindingPackage =
        (BindingPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(BindingPackage.eNS_URI)
                    instanceof BindingPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(BindingPackage.eNS_URI)
                : BindingPackage.eINSTANCE);
    LocalizationPackageImpl theLocalizationPackage =
        (LocalizationPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(LocalizationPackage.eNS_URI)
                    instanceof LocalizationPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(LocalizationPackage.eNS_URI)
                : LocalizationPackage.eINSTANCE);
    ModelmanagementPackageImpl theModelmanagementPackage =
        (ModelmanagementPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ModelmanagementPackage.eNS_URI)
                    instanceof ModelmanagementPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ModelmanagementPackage.eNS_URI)
                : ModelmanagementPackage.eINSTANCE);
    ProcesscomponentsPackageImpl theProcesscomponentsPackage =
        (ProcesscomponentsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(ProcesscomponentsPackage.eNS_URI)
                    instanceof ProcesscomponentsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(ProcesscomponentsPackage.eNS_URI)
                : ProcesscomponentsPackage.eINSTANCE);
    DeploymentunitsPackageImpl theDeploymentunitsPackage =
        (DeploymentunitsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(DeploymentunitsPackage.eNS_URI)
                    instanceof DeploymentunitsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(DeploymentunitsPackage.eNS_URI)
                : DeploymentunitsPackage.eINSTANCE);
    persistence.actions.impl.ActionsPackageImpl theActionsPackage_1 =
        (persistence.actions.impl.ActionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(persistence.actions.ActionsPackage.eNS_URI)
                    instanceof persistence.actions.impl.ActionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(persistence.actions.ActionsPackage.eNS_URI)
                : persistence.actions.ActionsPackage.eINSTANCE);
    persistence.expressions.impl.ExpressionsPackageImpl theExpressionsPackage_1 =
        (persistence.expressions.impl.ExpressionsPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(
                        persistence.expressions.ExpressionsPackage.eNS_URI)
                    instanceof persistence.expressions.impl.ExpressionsPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(
                    persistence.expressions.ExpressionsPackage.eNS_URI)
                : persistence.expressions.ExpressionsPackage.eINSTANCE);
    Data_bindingPackageImpl theData_bindingPackage =
        (Data_bindingPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(Data_bindingPackage.eNS_URI)
                    instanceof Data_bindingPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(Data_bindingPackage.eNS_URI)
                : Data_bindingPackage.eINSTANCE);
    TemplatesPackageImpl theTemplatesPackage =
        (TemplatesPackageImpl)
            (EPackage.Registry.INSTANCE.getEPackage(TemplatesPackage.eNS_URI)
                    instanceof TemplatesPackageImpl
                ? EPackage.Registry.INSTANCE.getEPackage(TemplatesPackage.eNS_URI)
                : TemplatesPackage.eINSTANCE);

    // Create package meta-data objects
    theAp_runtime_constraintsPackage.createPackageContents();
    theAbapmappingPackage.createPackageContents();
    theAbapdictionaryPackage.createPackageContents();
    theBpdmPackage.createPackageContents();
    theBusinesstasksPackage.createPackageContents();
    theActionsPackage.createPackageContents();
    theRulesPackage.createPackageContents();
    theEventsPackage.createPackageContents();
    theTransactionsPackage.createPackageContents();
    theStatus_and_action_oldPackage.createPackageContents();
    theDesignPackage.createPackageContents();
    theAssemblyPackage.createPackageContents();
    theBusinessconfigurationPackage.createPackageContents();
    theExperimentalPackage.createPackageContents();
    theContext_driversPackage.createPackageContents();
    theClassesPackage.createPackageContents();
    theConstraintsPackage.createPackageContents();
    theQuantitystructurePackage.createPackageContents();
    theTimedependencyPackage.createPackageContents();
    theDocumentsPackage.createPackageContents();
    theGenericsPackage.createPackageContents();
    theTuplesPackage.createPackageContents();
    theExpressionsPackage.createPackageContents();
    theLiteralsPackage.createPackageContents();
    theCollectionexpressionsPackage.createPackageContents();
    theFpPackage.createPackageContents();
    theQueryPackage.createPackageContents();
    theAnalyticsPackage.createPackageContents();
    theProcessintegrationPackage.createPackageContents();
    theXsdPackage.createPackageContents();
    theBindingPackage.createPackageContents();
    theLocalizationPackage.createPackageContents();
    theModelmanagementPackage.createPackageContents();
    theProcesscomponentsPackage.createPackageContents();
    theDeploymentunitsPackage.createPackageContents();
    theActionsPackage_1.createPackageContents();
    theExpressionsPackage_1.createPackageContents();
    theData_bindingPackage.createPackageContents();
    theTemplatesPackage.createPackageContents();

    // Initialize created meta-data
    theAp_runtime_constraintsPackage.initializePackageContents();
    theAbapmappingPackage.initializePackageContents();
    theAbapdictionaryPackage.initializePackageContents();
    theBpdmPackage.initializePackageContents();
    theBusinesstasksPackage.initializePackageContents();
    theActionsPackage.initializePackageContents();
    theRulesPackage.initializePackageContents();
    theEventsPackage.initializePackageContents();
    theTransactionsPackage.initializePackageContents();
    theStatus_and_action_oldPackage.initializePackageContents();
    theDesignPackage.initializePackageContents();
    theAssemblyPackage.initializePackageContents();
    theBusinessconfigurationPackage.initializePackageContents();
    theExperimentalPackage.initializePackageContents();
    theContext_driversPackage.initializePackageContents();
    theClassesPackage.initializePackageContents();
    theConstraintsPackage.initializePackageContents();
    theQuantitystructurePackage.initializePackageContents();
    theTimedependencyPackage.initializePackageContents();
    theDocumentsPackage.initializePackageContents();
    theGenericsPackage.initializePackageContents();
    theTuplesPackage.initializePackageContents();
    theExpressionsPackage.initializePackageContents();
    theLiteralsPackage.initializePackageContents();
    theCollectionexpressionsPackage.initializePackageContents();
    theFpPackage.initializePackageContents();
    theQueryPackage.initializePackageContents();
    theAnalyticsPackage.initializePackageContents();
    theProcessintegrationPackage.initializePackageContents();
    theXsdPackage.initializePackageContents();
    theBindingPackage.initializePackageContents();
    theLocalizationPackage.initializePackageContents();
    theModelmanagementPackage.initializePackageContents();
    theProcesscomponentsPackage.initializePackageContents();
    theDeploymentunitsPackage.initializePackageContents();
    theActionsPackage_1.initializePackageContents();
    theExpressionsPackage_1.initializePackageContents();
    theData_bindingPackage.initializePackageContents();
    theTemplatesPackage.initializePackageContents();

    // Mark meta-data to indicate it can't be changed
    theAp_runtime_constraintsPackage.freeze();

    // Update the registry and return the package
    EPackage.Registry.INSTANCE.put(
        Ap_runtime_constraintsPackage.eNS_URI, theAp_runtime_constraintsPackage);
    return theAp_runtime_constraintsPackage;
  }
/**
 *
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model. It contains accessors for the meta objects to represent
 *
 * <ul>
 *   <li>each class,
 *   <li>each feature of each class,
 *   <li>each enum,
 *   <li>and each data type
 * </ul>
 *
 * <!-- end-user-doc -->
 * <!-- begin-model-doc -->
 * If it turns out to be beneficial, elements in this package cover the creation and management of
 * BTM-related objects, such as creating a business task, assigning it to specific users or roles,
 * etc.
 * <!-- end-model-doc -->
 *
 * @see behavioral.businesstasks.BusinesstasksFactory
 * @model kind="package" annotation="http://www.eclipse.org/emf/2002/Ecore
 *     invocationDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL'
 *     validationDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL'
 *     settingDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL'"
 * @generated
 */
public interface BusinesstasksPackage extends EPackage {
  /**
   * The package name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @generated
   */
  String eNAME = "businesstasks";

  /**
   * The package namespace URI.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @generated
   */
  String eNS_URI = "http:///behavioral/businesstasks.ecore";

  /**
   * The package namespace name.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @generated
   */
  String eNS_PREFIX = "behavioral.businesstasks";

  /**
   * The singleton instance of the package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @generated
   */
  BusinesstasksPackage eINSTANCE = behavioral.businesstasks.impl.BusinesstasksPackageImpl.init();

  /**
   * The meta object id for the '{@link behavioral.businesstasks.impl.TaskAgentImpl <em>Task
   * Agent</em>}' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @see behavioral.businesstasks.impl.TaskAgentImpl
   * @see behavioral.businesstasks.impl.BusinesstasksPackageImpl#getTaskAgent()
   * @generated
   */
  int TASK_AGENT = 0;

  /**
   * The number of structural features of the '<em>Task Agent</em>' class.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @generated
   * @ordered
   */
  int TASK_AGENT_FEATURE_COUNT = 0;

  /**
   * Returns the meta object for class '{@link behavioral.businesstasks.TaskAgent <em>Task
   * Agent</em>}'.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @return the meta object for class '<em>Task Agent</em>'.
   * @see behavioral.businesstasks.TaskAgent
   * @generated
   */
  EClass getTaskAgent();

  /**
   * Returns the factory that creates the instances of the model.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   *
   * @return the factory that creates the instances of the model.
   * @generated
   */
  BusinesstasksFactory getBusinesstasksFactory();

  /**
   *
   * <!-- begin-user-doc -->
   * Defines literals for the meta objects that represent
   *
   * <ul>
   *   <li>each class,
   *   <li>each feature of each class,
   *   <li>each enum,
   *   <li>and each data type
   * </ul>
   *
   * <!-- end-user-doc -->
   *
   * @generated
   */
  interface Literals {
    /**
     * The meta object literal for the '{@link behavioral.businesstasks.impl.TaskAgentImpl <em>Task
     * Agent</em>}' class.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     *
     * @see behavioral.businesstasks.impl.TaskAgentImpl
     * @see behavioral.businesstasks.impl.BusinesstasksPackageImpl#getTaskAgent()
     * @generated
     */
    EClass TASK_AGENT = eINSTANCE.getTaskAgent();
  }
} // BusinesstasksPackage