## Package org.eclipse.emf.ocl.uml

Extensions to the Ecore metamodel for UML-specific concepts supported by the OCL language.

See:
Description

Interface Summary
CallOperationAction: Deprecated. Use the `CallOperationAction` interface, instead.
Constraint: Deprecated. Use the `Constraint` interface, instead.
SendSignalAction: Deprecated. Use the `SendSignalAction` interface, instead.
TypedElement: Deprecated. Use the `TypedElement` interface, instead.
UMLFactory: Deprecated. Use the `EcoreFactory` interface, instead.
UMLPackage: Deprecated. Use the `EcorePackage` interface, instead.
UMLPackage.Literals: Defines literals for the meta objects that represent each class, each feature of each class, each enum, and each data type

## Package org.eclipse.emf.ocl.uml Description

Extensions to the Ecore metamodel for UML-specific concepts supported by the OCL language.

## Package Specification

This package extends the Ecore metamodel to support UML concepts required by the OCL language that Ecore does not implement. These extensions are not required for the use of OCL on Ecore models, but would be necessary for other metamodels that support some of these UML concepts.

The following Ecore extensions are defined:

- `Constraint`: top-level construct in the AST; contains an `OCLExpression` in some constraint context.
- `CallOperationAction`: represents an invocation of an `EOperation` in the OCL message model.
- `SendSignalAction`: represents the sending of a `Signal` in the OCL message model.

The `IOCLHelper` also provides simple, but flexible, support for parsing OCL expressions: invariants in a classifier context, and pre/post conditions and body conditions in an operation context. Evaluation is also supported for invariant constraints. The helper is constructed with an `EnvironmentFactory` that creates the necessary environments for parsing the client's metamodel. This allows clients of other metamodels than Ecore (e.g., SQL, UML2) that describe software systems in terms of classifiers to use OCL to expression constraints. An environment maps the metamodel in question to the OCL parser's extended Ecore metamodel.

Copyright 2002, 2007 IBM Corporation and others. All Rights Reserved.