## org.eclipse.uml2.uml.util
Class UMLUtil

    java.lang.Object
      org.eclipse.uml2.common.util.UML2Util
          org.eclipse.uml2.uml.util.UMLUtil

    public class UMLUtil

extends UML2Util

Utilities for working with UML elements and resources.

Since:
  2.0

Nested Class Summary
`static class` `UMLUtil.Ecore2UMLConverter` A converter that converts Ecore model elements to representative UML elements.
`static class` `UMLUtil.PackageMerger` A copier that merges the contents of packages involved in package merge relationships based on the rules defined in the UML specification.
`static class` `UMLUtil.Profile2EPackageConverter` A converter that converts UML profiles to representative Ecore packages.
`static class` `UMLUtil.QualifiedTextProvider` A qualified text provider that uses names of named elements as qualified text segments and :: as a separator.
`static class` `UMLUtil.UML2EcoreConverter` A converter that converts UML elements to representative Ecore model elements.

Nested classes/interfaces inherited from class org.eclipse.uml2.common.util.UML2Util
`UML2Util.Converter, UML2Util.EClassMatcher, UML2Util.EObjectMatcher, UML2Util.EStructuralFeatureMatcher`

Field Summary
`protected static java.lang.String` `ANNOTATION__DUPLICATES`
`protected static java.lang.String` `ANNOTATION__REDEFINES`
`protected static java.lang.String` `ANNOTATION__SUBSETS`
`protected static java.lang.String` `ANNOTATION__UNION`
`protected static java.lang.String` `ANNOTATION_DETAIL__BODY`
`protected static java.lang.String` `EMF_GEN_MODEL_PACKAGE_NS_URI`
`protected static java.lang.String` `ENUMERATION__CONTENT_KIND`
`protected static java.lang.String` `ENUMERATION__FEATURE_KIND`
`protected static java.lang.String` `ENUMERATION__VISIBILITY_KIND`
`protected static java.lang.String` `ENUMERATION_LITERAL__ATTRIBUTE`
`protected static java.lang.String` `ENUMERATION_LITERAL__ATTRIBUTE_WILDCARD`
`protected static java.lang.String` `ENUMERATION_LITERAL__ELEMENT`
`protected static java.lang.String` `ENUMERATION_LITERAL__ELEMENT_ONLY`
`protected static java.lang.String` `ENUMERATION_LITERAL__ELEMENT_WILDCARD`
`protected static java.lang.String` `ENUMERATION_LITERAL__EMPTY`
`protected static java.lang.String` `ENUMERATION_LITERAL__GROUP`
`protected static java.lang.String` `ENUMERATION_LITERAL__MIXED`
`protected static java.lang.String` `ENUMERATION_LITERAL__NONE`
`protected static java.lang.String` `ENUMERATION_LITERAL__READ_ONLY`
`protected static java.lang.String` `ENUMERATION_LITERAL__READ_ONLY_UNSETTABLE`
`protected static java.lang.String` `ENUMERATION_LITERAL__READ_WRITE`
`protected static java.lang.String` `ENUMERATION_LITERAL__READ_WRITE_UNSETTABLE`
`protected static java.lang.String` `ENUMERATION_LITERAL__SIMPLE`
`protected static java.lang.String` `ENUMERATION_LITERAL__UNSPECIFIED`
`protected static java.lang.String` `LANGUAGE__JAVA`
`protected static java.lang.String` `LANGUAGE__OCL`
`static java.lang.String` `OPTION__DISCARD` Represents an option choice of 'discard'.
`static java.lang.String` `OPTION__IGNORE` Represents an option choice of 'ignore'.
`static java.lang.String` `OPTION__PROCESS` Represents an option choice of 'process'.
`static java.lang.String` `OPTION__REPORT` Represents an option choice of 'report'.
`static java.lang.String` `STEREOTYPE__E_ATTRIBUTE` The name of the 'EAttribute' stereotype.
`static java.lang.String` `STEREOTYPE__E_CLASS` The name of the 'EClass' stereotype.
`static java.lang.String` `STEREOTYPE__E_DATA_TYPE` The name of the 'EDataType' stereotype.
`static java.lang.String` `STEREOTYPE__E_ENUM` The name of the 'EEnum' stereotype.
`static java.lang.String` `STEREOTYPE__E_ENUM_LITERAL` The name of the 'EEnumLiteral' stereotype.
`static java.lang.String` `STEREOTYPE__E_GENERIC_TYPE` The name of the 'EGenericType' stereotype.
`static java.lang.String` `STEREOTYPE__E_OPERATION` The name of the 'EOperation' stereotype.
`static java.lang.String` `STEREOTYPE__E_PACKAGE` The name of the 'EPackage' stereotype.
`static java.lang.String` `STEREOTYPE__E_PARAMETER` The name of the 'EParameter' stereotype.
`static java.lang.String` `STEREOTYPE__E_REFERENCE` The name of the 'EReference' stereotype.
`static java.lang.String` `STEREOTYPE__E_TYPE_PARAMETER` The name of the 'ETypeParameter' stereotype.
`static java.lang.String` `TAG_DEFINITION__ATTRIBUTE_NAME` The name of the 'attributeName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__BASE_PACKAGE` The name of the 'basePackage' stereotype property.
`static java.lang.String` `TAG_DEFINITION__BOUNDS` The name of the 'bounds' stereotype property.
`static java.lang.String` `TAG_DEFINITION__CLASS_NAME` The name of the 'className' stereotype property.
`static java.lang.String` `TAG_DEFINITION__DATA_TYPE_NAME` The name of the 'dataTypeName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__ENUM_LITERAL_NAME` The name of the 'enumLiteralName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__ENUM_NAME` The name of the 'enumName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__INSTANCE_CLASS_NAME` The name of the 'instanceClassName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__IS_ID` The name of the 'isID' stereotype property.
`static java.lang.String` `TAG_DEFINITION__IS_RESOLVE_PROXIES` The name of the 'isResolveProxies' stereotype property.
`static java.lang.String` `TAG_DEFINITION__IS_TRANSIENT` The name of the 'isTransient' stereotype property.
`static java.lang.String` `TAG_DEFINITION__IS_UNSETTABLE` The name of the 'isUnsettable' stereotype property.
`static java.lang.String` `TAG_DEFINITION__IS_VOLATILE` The name of the 'isVolatile' stereotype property.
`static java.lang.String` `TAG_DEFINITION__LOWER_BOUND` The name of the 'lowerBound' stereotype property.
`static java.lang.String` `TAG_DEFINITION__NS_PREFIX` The name of the 'nsPrefix' stereotype property.
`static java.lang.String` `TAG_DEFINITION__NS_URI` The name of the 'nsURI' stereotype property.
`static java.lang.String` `TAG_DEFINITION__OPERATION_NAME` The name of the 'operationName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__PACKAGE_NAME` The name of the 'packageName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__PARAMETER_NAME` The name of the 'parameterName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__PREFIX` The name of the 'prefix' stereotype property.
`static java.lang.String` `TAG_DEFINITION__REFERENCE_NAME` The name of the 'referenceName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__UPPER_BOUND` The name of the 'upperBound' stereotype property.
`static java.lang.String` `TAG_DEFINITION__VISIBILITY` The name of the 'visibility' stereotype property.
`static java.lang.String` `TAG_DEFINITION__XML_CONTENT_KIND` The name of the 'xmlContentKind' stereotype property.
`static java.lang.String` `TAG_DEFINITION__XML_FEATURE_KIND` The name of the 'xmlFeatureKind' stereotype property.
`static java.lang.String` `TAG_DEFINITION__XML_NAME` The name of the 'xmlName' stereotype property.
`static java.lang.String` `TAG_DEFINITION__XML_NAMESPACE` The name of the 'xmlNamespace' stereotype property.
`protected static java.lang.String` `UML2_GEN_MODEL_PACKAGE_NS_URI`
`protected static java.lang.String` `UML2_UML_PACKAGE_2_0_NS_URI`

Fields inherited from class org.eclipse.uml2.common.util.UML2Util
`DEFAULT_URI_CONVERTER, EMPTY_STRING, LINE_SEPARATOR, PROPERTIES_FILE_EXTENSION, RESOURCE_BUNDLES, URI_SCHEME_PLATFORM, URI_SEGMENT_PLUGIN, URI_SEGMENT_RESOURCE`

Constructor Summary
`UMLUtil()`

Method Summary
`protected static org.eclipse.emf.ecore.EObject` `applyStereotype(Element element, org.eclipse.emf.ecore.EClass definition)`
`static java.util.Collection<Package>` `convertFromEcore(org.eclipse.emf.ecore.EPackage ePackage, java.util.Map<java.lang.String,java.lang.String> options)` Converts the specified Ecore package (and its contents) to UML using the specified options.

`static java.util.Collection<Package>`

`convertFromEcore(org.eclipse.emf.ecore.EPackage ePackage, java.util.Map<java.lang.String,java.lang.String> options, org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)`
Converts the specified Ecore package (and its contents) to UML using the specified options, reporting problems to the specified diagnostics, within the specified context.

`static java.util.Collection<org.eclipse.emf.ecore.EPackage>` `convertToEcore(Package package_, java.util.Map<java.lang.String,java.lang.String> options)` Converts the specified package (and its contents) to Ecore using the specified options.

`static java.util.Collection<org.eclipse.emf.ecore.EPackage>`

`convertToEcore(Package package_, java.util.Map<java.lang.String,java.lang.String> options, org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)`
Converts the specified package (and its contents) to Ecore using the specified options, reporting problems to the specified diagnostics, within the specified context.

`static java.util.Collection<org.eclipse.emf.ecore.EPackage>` `convertToEcore(Profile profile, java.util.Map<java.lang.String,java.lang.String> options)` Converts the specified profile (and its contents) to Ecore using the specified options.

`static java.util.Collection<org.eclipse.emf.ecore.EPackage>`

`convertToEcore(Profile profile, java.util.Map<java.lang.String,java.lang.String> options, org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)`
Converts the specified profile (and its contents) to Ecore using the specified options, reporting problems to the specified diagnostics, within the specified context.

`protected static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(java.util.Collection<? extends org.eclipse.emf.ecore.EObject> eObjects, java.lang.String qualifiedName, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass, java.util.Collection<NE> namedElements)`

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, java.lang.String qualifiedName)`
Retrieves the named element(s) with the specified qualified name from the specified resource set.

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, java.lang.String qualifiedName, boolean ignoreCase)`
Retrieves the named element(s) with the specified qualified name from the specified resource set, optionally ignoring case when doing name comparisons.

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, java.lang.String qualifiedName, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)`
Retrieves the named element(s) of the specified type with the specified qualified name from the specified resource set, optionally ignoring case when doing name comparisons.

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.Resource resource, java.lang.String qualifiedName)`
Retrieves the named element(s) with the specified qualified name from the specified resource.

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.Resource resource, java.lang.String qualifiedName, boolean ignoreCase)`
Retrieves the named element(s) with the specified qualified name from the specified resource, optionally ignoring case when doing name comparisons.

`static

`<NE extends NamedElement> java.util.Collection<NE>`

`

`findNamedElements(org.eclipse.emf.ecore.resource.Resource resource, java.lang.String qualifiedName, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass)`
Retrieves the named element(s) of the specified type with the specified qualified name from the specified resource, optionally ignoring case when doing name comparisons.

`protected static

`<F extends Feature> java.util.Collection<F>`

`

`findValidRedefinitions(java.util.Collection<F> redefinedFeatures, F redefiningFeature, java.lang.String name, Classifier redefinitionContext)`

`protected static

`<F extends Feature> java.util.Collection<F>`

`

`findValidRedefinitions(F redefiningFeature, java.lang.String name)`

`protected static java.util.Collection<Property>` `findValidSubsets(java.util.Collection<Property> subsettedProperties, Property subsettingProperty, java.lang.String name, Classifier subsettingContext)`
`protected static java.util.Collection<Property>` `findValidSubsets(Property subsettingProperty, java.lang.String name)`
`static Element` `getBaseElement(org.eclipse.emf.ecore.EObject stereotypeApplication)` Retrieves the base element for the specified stereotype application, i.e.
`protected static org.eclipse.emf.ecore.EClassifier` `getEClassifier(Class metaclass)`
`protected static org.eclipse.emf.ecore.EClassifier` `getEClassifier(Type type)`
`protected static org.eclipse.emf.ecore.EPackage` `getEPackage(Package package_)`
`protected static org.eclipse.emf.common.util.EList<org.eclipse.emf.ecore.ETypeParameter>` `getETypeParameters(org.eclipse.emf.ecore.EObject eObject)`
`protected static NamedElement` `getNamedElement(org.eclipse.emf.ecore.ENamedElement definition)`
`protected static NamedElement` `getNamedElement(org.eclipse.emf.ecore.ENamedElement definition, org.eclipse.emf.ecore.EObject context)`
`protected static org.eclipse.emf.common.util.EList<Property>` `getOwnedAttributes(Type type)`
`protected static org.eclipse.emf.common.util.EList<Operation>` `getOwnedOperations(Type type)`
`protected static Element` `getOwningElement(Element element, org.eclipse.emf.ecore.EClass eClass, boolean resolve)`
`static Profile` `getProfile(org.eclipse.emf.ecore.EPackage definition)` Retrieves the profile for which the specified package represents a definition.
`static Profile` `getProfile(org.eclipse.emf.ecore.EPackage definition, org.eclipse.emf.ecore.EObject context)`
`protected static java.lang.String` `getQualifiedName(NamedElement namedElement, java.lang.String separator)`
`static java.lang.String` `getQualifiedText(org.eclipse.emf.ecore.EObject eObject)` Retrieves a qualified textual representation of the specified object using the default qualified text provider.
`protected static org.eclipse.emf.common.util.EList<Feature>` `getRedefinedFeatures(Feature feature)`
`protected static Stereotype` `getStereotype(org.eclipse.emf.ecore.EClass definition)`
`protected static Stereotype` `getStereotype(org.eclipse.emf.ecore.EClass definition, org.eclipse.emf.ecore.EObject stereotypeApplication)`
`static Stereotype` `getStereotype(org.eclipse.emf.ecore.EObject stereotypeApplication)` Retrieves the stereotype for which the specified object represents an application.
`protected static Property` `getTagDefinition(Stereotype stereotype, java.lang.String propertyName)`
`protected static java.lang.Object` `getTaggedValue(Element element, java.lang.String qualifiedStereotypeName, java.lang.String propertyName)`
`protected static boolean` `isRedefinitionValid(Feature redefiningFeature, Feature redefinedFeature)`
`protected static boolean` `isSubsetValid(Property subsettingProperty, Property subsettedProperty)`
`static void` `merge(Package package_, java.util.Map<java.lang.String,java.lang.String> options)` Merges the contents of (all of) the packages merged by the specified package using the specified options.
`static void` `merge(Package package_, java.util.Map<java.lang.String,java.lang.String> options, org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)` Merges the contents of (all of) the packages merged by the specified package using the specified options, reporting problems to the specified diagnostics, within the specified context.
`static org.eclipse.emf.ecore.EObject` `safeApplyStereotype(Element element, Stereotype stereotype)` Safely applies the specified stereotype to the specified element, i.e.
`static void` `setBaseElement(org.eclipse.emf.ecore.EObject stereotypeApplication, Element element)` Sets the base element for the specified stereotype application to the specified element.
`static boolean` `setTaggedValue(Element element, Stereotype stereotype, java.lang.String propertyName, java.lang.Object value)` Sets the value of the specified property of the specified stereotype application on the specified element.

Methods inherited from class org.eclipse.uml2.common.util.UML2Util

`addConstraint, addDocumentation, createEAnnotation, destroy, destroyAll, findEObject, findEObject, getAllContents, getCommonEType, getEAnnotation, getGreaterUpperBound, getInstanceCount, getInverseReferences, getLesserLowerBound, getMessageSubstitution, getMessageSubstitutions, getMessageSubstitutions, getMessageSubstitutions, getNonNavigableInverseReferences, getQualifiedText, getQualifiedText, getQualifiedTextSegment, getResourceBundle, getResourceBundle, getResourceBundleURIs, getResourceBundleURIs, getRootContainers, getString, getValidJavaIdentifier, getValidJavaIdentifier, getValidNCName, getValidNCName, getXMIIdentifier, getXMIIdentifier, intersect, isEmpty, isNCNamePart, isNCNameStart, load, removeReferences, safeEquals`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### OPTION__DISCARD

    public static final java.lang.String OPTION__DISCARD

  Represents an option choice of 'discard'.

  See Also:
    Constant Field Values

### OPTION__IGNORE

    public static final java.lang.String OPTION__IGNORE

  Represents an option choice of 'ignore'.

  See Also:
    Constant Field Values

### OPTION__PROCESS

    public static final java.lang.String OPTION__PROCESS

  Represents an option choice of 'process'.

  See Also:
    Constant Field Values

### OPTION__REPORT

    public static final java.lang.String OPTION__REPORT

  Represents an option choice of 'report'.

  See Also:
    Constant Field Values

### ANNOTATION__DUPLICATES

    protected static final java.lang.String ANNOTATION__DUPLICATES

See Also:
  Constant Field Values

### ANNOTATION__REDEFINES

    protected static final java.lang.String ANNOTATION__REDEFINES

See Also:
  Constant Field Values

### ANNOTATION__SUBSETS

    protected static final java.lang.String ANNOTATION__SUBSETS

See Also:
  Constant Field Values

### ANNOTATION__UNION

    protected static final java.lang.String ANNOTATION__UNION

See Also:
  Constant Field Values

### ANNOTATION_DETAIL__BODY

    protected static final java.lang.String ANNOTATION_DETAIL__BODY

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__ATTRIBUTE

    protected static final java.lang.String ENUMERATION_LITERAL__ATTRIBUTE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__ATTRIBUTE_WILDCARD

    protected static final java.lang.String ENUMERATION_LITERAL__ATTRIBUTE_WILDCARD

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__ELEMENT

    protected static final java.lang.String ENUMERATION_LITERAL__ELEMENT

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__ELEMENT_ONLY

    protected static final java.lang.String ENUMERATION_LITERAL__ELEMENT_ONLY

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__ELEMENT_WILDCARD

    protected static final java.lang.String ENUMERATION_LITERAL__ELEMENT_WILDCARD

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__EMPTY

    protected static final java.lang.String ENUMERATION_LITERAL__EMPTY

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__GROUP

    protected static final java.lang.String ENUMERATION_LITERAL__GROUP

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__MIXED

    protected static final java.lang.String ENUMERATION_LITERAL__MIXED

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__NONE

    protected static final java.lang.String ENUMERATION_LITERAL__NONE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__SIMPLE

    protected static final java.lang.String ENUMERATION_LITERAL__SIMPLE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__READ_ONLY

    protected static final java.lang.String ENUMERATION_LITERAL__READ_ONLY

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__READ_ONLY_UNSETTABLE

    protected static final java.lang.String ENUMERATION_LITERAL__READ_ONLY_UNSETTABLE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__READ_WRITE

    protected static final java.lang.String ENUMERATION_LITERAL__READ_WRITE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__READ_WRITE_UNSETTABLE

    protected static final java.lang.String ENUMERATION_LITERAL__READ_WRITE_UNSETTABLE

See Also:
  Constant Field Values

### ENUMERATION_LITERAL__UNSPECIFIED

    protected static final java.lang.String ENUMERATION_LITERAL__UNSPECIFIED

See Also:
  Constant Field Values

### ENUMERATION__CONTENT_KIND

    protected static final java.lang.String ENUMERATION__CONTENT_KIND

See Also:
  Constant Field Values

### ENUMERATION__FEATURE_KIND

    protected static final java.lang.String ENUMERATION__FEATURE_KIND

See Also:
  Constant Field Values

### ENUMERATION__VISIBILITY_KIND

    protected static final java.lang.String ENUMERATION__VISIBILITY_KIND

See Also:
  Constant Field Values

### EMF_GEN_MODEL_PACKAGE_NS_URI

    protected static final java.lang.String EMF_GEN_MODEL_PACKAGE_NS_URI

See Also:
  Constant Field Values

### UML2_GEN_MODEL_PACKAGE_NS_URI

    protected static final java.lang.String UML2_GEN_MODEL_PACKAGE_NS_URI

See Also:
  Constant Field Values

### LANGUAGE__JAVA

    protected static final java.lang.String LANGUAGE__JAVA

See Also:
  Constant Field Values

### LANGUAGE__OCL

    protected static final java.lang.String LANGUAGE__OCL

See Also:
  Constant Field Values

### UML2_UML_PACKAGE_2_0_NS_URI

    protected static final java.lang.String UML2_UML_PACKAGE_2_0_NS_URI

See Also:
  Constant Field Values

### STEREOTYPE__E_ATTRIBUTE

    public static final java.lang.String STEREOTYPE__E_ATTRIBUTE

  The name of the 'EAttribute' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_CLASS

    public static final java.lang.String STEREOTYPE__E_CLASS

  The name of the 'EClass' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_GENERIC_TYPE

    public static final java.lang.String STEREOTYPE__E_GENERIC_TYPE

  The name of the 'EGenericType' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_TYPE_PARAMETER

    public static final java.lang.String STEREOTYPE__E_TYPE_PARAMETER

  The name of the 'ETypeParameter' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_DATA_TYPE

    public static final java.lang.String STEREOTYPE__E_DATA_TYPE

  The name of the 'EDataType' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_ENUM

    public static final java.lang.String STEREOTYPE__E_ENUM

  The name of the 'EEnum' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_ENUM_LITERAL

    public static final java.lang.String STEREOTYPE__E_ENUM_LITERAL

  The name of the 'EEnumLiteral' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_OPERATION

    public static final java.lang.String STEREOTYPE__E_OPERATION

  The name of the 'EOperation' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_PACKAGE

    public static final java.lang.String STEREOTYPE__E_PACKAGE

  The name of the 'EPackage' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_PARAMETER

    public static final java.lang.String STEREOTYPE__E_PARAMETER

  The name of the 'EParameter' stereotype.

  See Also:
    Constant Field Values

### STEREOTYPE__E_REFERENCE

    public static final java.lang.String STEREOTYPE__E_REFERENCE

  The name of the 'EReference' stereotype.

  See Also:
    Constant Field Values

### TAG_DEFINITION__UPPER_BOUND

    public static final java.lang.String TAG_DEFINITION__UPPER_BOUND

  The name of the 'upperBound' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__LOWER_BOUND

    public static final java.lang.String TAG_DEFINITION__LOWER_BOUND

  The name of the 'lowerBound' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__BOUNDS

    public static final java.lang.String TAG_DEFINITION__BOUNDS

  The name of the 'bounds' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__ATTRIBUTE_NAME

    public static final java.lang.String TAG_DEFINITION__ATTRIBUTE_NAME

  The name of the 'attributeName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__BASE_PACKAGE

    public static final java.lang.String TAG_DEFINITION__BASE_PACKAGE

  The name of the 'basePackage' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__CLASS_NAME

    public static final java.lang.String TAG_DEFINITION__CLASS_NAME

  The name of the 'className' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__DATA_TYPE_NAME

    public static final java.lang.String TAG_DEFINITION__DATA_TYPE_NAME

  The name of the 'dataTypeName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__ENUM_NAME

    public static final java.lang.String TAG_DEFINITION__ENUM_NAME

  The name of the 'enumName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__ENUM_LITERAL_NAME

    public static final java.lang.String TAG_DEFINITION__ENUM_LITERAL_NAME

  The name of the 'enumLiteralName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__INSTANCE_CLASS_NAME

    public static final java.lang.String TAG_DEFINITION__INSTANCE_CLASS_NAME

  The name of the 'instanceClassName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__IS_ID

    public static final java.lang.String TAG_DEFINITION__IS_ID

  The name of the 'isID' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__IS_RESOLVE_PROXIES

    public static final java.lang.String TAG_DEFINITION__IS_RESOLVE_PROXIES

  The name of the 'isResolveProxies' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__IS_TRANSIENT

    public static final java.lang.String TAG_DEFINITION__IS_TRANSIENT

  The name of the 'isTransient' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__IS_UNSETTABLE

    public static final java.lang.String TAG_DEFINITION__IS_UNSETTABLE

  The name of the 'isUnsettable' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__IS_VOLATILE

    public static final java.lang.String TAG_DEFINITION__IS_VOLATILE

  The name of the 'isVolatile' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__NS_PREFIX

    public static final java.lang.String TAG_DEFINITION__NS_PREFIX

  The name of the 'nsPrefix' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__NS_URI

    public static final java.lang.String TAG_DEFINITION__NS_URI

  The name of the 'nsURI' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__OPERATION_NAME

    public static final java.lang.String TAG_DEFINITION__OPERATION_NAME

  The name of the 'operationName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__PACKAGE_NAME

    public static final java.lang.String TAG_DEFINITION__PACKAGE_NAME

  The name of the 'packageName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__PARAMETER_NAME

    public static final java.lang.String TAG_DEFINITION__PARAMETER_NAME

  The name of the 'parameterName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__PREFIX

    public static final java.lang.String TAG_DEFINITION__PREFIX

  The name of the 'prefix' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__REFERENCE_NAME

    public static final java.lang.String TAG_DEFINITION__REFERENCE_NAME

  The name of the 'referenceName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__VISIBILITY

    public static final java.lang.String TAG_DEFINITION__VISIBILITY

  The name of the 'visibility' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__XML_CONTENT_KIND

    public static final java.lang.String TAG_DEFINITION__XML_CONTENT_KIND

  The name of the 'xmlContentKind' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__XML_FEATURE_KIND

    public static final java.lang.String TAG_DEFINITION__XML_FEATURE_KIND

  The name of the 'xmlFeatureKind' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__XML_NAME

    public static final java.lang.String TAG_DEFINITION__XML_NAME

  The name of the 'xmlName' stereotype property.

  See Also:
    Constant Field Values

### TAG_DEFINITION__XML_NAMESPACE

    public static final java.lang.String TAG_DEFINITION__XML_NAMESPACE

  The name of the 'xmlNamespace' stereotype property.

  See Also:
    Constant Field Values

Constructor Detail

### UMLUtil

    public UMLUtil()

Method Detail

### getQualifiedText

    public static java.lang.String getQualifiedText(org.eclipse.emf.ecore.EObject eObject)

  Retrieves a qualified textual representation of the specified object using the default qualified text provider.

  Parameters:
    `eObject` - The object for which to retrieve qualified text.
  Returns:
    A qualified textual representation of the object.

### getQualifiedName

    protected static java.lang.String getQualifiedName(NamedElement namedElement,
                                                       java.lang.String separator)

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                                                       java.lang.String qualifiedName)

  Retrieves the named element(s) with the specified qualified name from the specified resource set.

  Parameters:
    `resourceSet` - The resource set in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
  Returns:
    The named element(s).

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                                                       java.lang.String qualifiedName,
                                                                                       boolean ignoreCase)

  Retrieves the named element(s) with the specified qualified name from the specified resource set, optionally ignoring case when doing name comparisons.

  Parameters:
    `resourceSet` - The resource set in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
    `ignoreCase` - Whether to ignore case when doing name comparisons.
  Returns:
    The named element(s).

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                                                       java.lang.String qualifiedName,
                                                                                       boolean ignoreCase,
                                                                                       org.eclipse.emf.ecore.EClass eClass)

  Retrieves the named element(s) of the specified type with the specified qualified name from the specified resource set, optionally ignoring case when doing name comparisons.

  Parameters:
    `resourceSet` - The resource set in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
    `ignoreCase` - Whether to ignore case when doing name comparisons.
    `eClass` - The type of the element(s) to be found.
  Returns:
    The named element(s).

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.Resource resource,
                                                                                       java.lang.String qualifiedName)

  Retrieves the named element(s) with the specified qualified name from the specified resource.

  Parameters:
    `resource` - The resource in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
  Returns:
    The named element(s).

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.Resource resource,
                                                                                       java.lang.String qualifiedName,
                                                                                       boolean ignoreCase)

  Retrieves the named element(s) with the specified qualified name from the specified resource, optionally ignoring case when doing name comparisons.

  Parameters:
    `resource` - The resource in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
    `ignoreCase` - Whether to ignore case when doing name comparisons.
  Returns:
    The named element(s).

### findNamedElements

    public static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(org.eclipse.emf.ecore.resource.Resource resource,
                                                                                       java.lang.String qualifiedName,
                                                                                       boolean ignoreCase,
                                                                                       org.eclipse.emf.ecore.EClass eClass)

  Retrieves the named element(s) of the specified type with the specified qualified name from the specified resource, optionally ignoring case when doing name comparisons.

  Parameters:
    `resource` - The resource in which to search.
    `qualifiedName` - The qualified name of the element(s) to be found.
    `ignoreCase` - Whether to ignore case when doing name comparisons.
    `eClass` - The type of the element(s) to be found.
  Returns:
    The named element(s).

### findNamedElements

    protected static <NE extends NamedElement> java.util.Collection<NE> findNamedElements(java.util.Collection<? extends org.eclipse.emf.ecore.EObject> eObjects,
                                                                                          java.lang.String qualifiedName,
                                                                                          boolean ignoreCase,
                                                                                          org.eclipse.emf.ecore.EClass eClass,
                                                                                          java.util.Collection<NE> namedElements)

### getEPackage

    protected static org.eclipse.emf.ecore.EPackage getEPackage(Package package_)

### getEClassifier

    protected static org.eclipse.emf.ecore.EClassifier getEClassifier(Type type)

### getEClassifier

    protected static org.eclipse.emf.ecore.EClassifier getEClassifier(Class metaclass)

### getProfile

    public static Profile getProfile(org.eclipse.emf.ecore.EPackage definition)

  Retrieves the profile for which the specified package represents a definition.

  Parameters:
    `definition` - The package.
  Returns:
    The profile.

### getProfile

    public static Profile getProfile(org.eclipse.emf.ecore.EPackage definition,
                                     org.eclipse.emf.ecore.EObject context)

### getNamedElement

    protected static NamedElement getNamedElement(org.eclipse.emf.ecore.ENamedElement definition)

### getNamedElement

    protected static NamedElement getNamedElement(org.eclipse.emf.ecore.ENamedElement definition,
                                                  org.eclipse.emf.ecore.EObject context)

### getStereotype

    protected static Stereotype getStereotype(org.eclipse.emf.ecore.EClass definition)

### getStereotype

    protected static Stereotype getStereotype(org.eclipse.emf.ecore.EClass definition,
                                              org.eclipse.emf.ecore.EObject stereotypeApplication)

### getStereotype

    public static Stereotype getStereotype(org.eclipse.emf.ecore.EObject stereotypeApplication)

  Retrieves the stereotype for which the specified object represents an application.

  Parameters:
    `stereotypeApplication` - The object.
  Returns:
    The stereotype.

### getBaseElement

    public static Element getBaseElement(org.eclipse.emf.ecore.EObject stereotypeApplication)

  Retrieves the base element for the specified stereotype application, i.e. the element to which the stereotype is applied.

  Parameters:
    `stereotypeApplication` - The stereotype application.
  Returns:
    The base element.

### setBaseElement

    public static void setBaseElement(org.eclipse.emf.ecore.EObject stereotypeApplication,
                                      Element element)

  Sets the base element for the specified stereotype application to the specified element.

  Parameters:
    `stereotypeApplication` - The stereotype application.
    `element` - The new base element.

### applyStereotype

    protected static org.eclipse.emf.ecore.EObject applyStereotype(Element element,
                                                                   org.eclipse.emf.ecore.EClass definition)

### safeApplyStereotype

    public static org.eclipse.emf.ecore.EObject safeApplyStereotype(Element element,
                                                                    Stereotype stereotype)

  Safely applies the specified stereotype to the specified element, i.e. applies the profile if not already applied.

  Parameters:
    `element` - The element to which to apply the stereotype.
    `stereotype` - The stereotype to apply.
  Returns:
    The stereotype application.

### getTagDefinition

    protected static Property getTagDefinition(Stereotype stereotype,
                                               java.lang.String propertyName)

### getTaggedValue

    protected static java.lang.Object getTaggedValue(Element element,
                                                     java.lang.String qualifiedStereotypeName,
                                                     java.lang.String propertyName)

### setTaggedValue

    public static boolean setTaggedValue(Element element,
                                         Stereotype stereotype,
                                         java.lang.String propertyName,
                                         java.lang.Object value)

  Sets the value of the specified property of the specified stereotype application on the specified element.

  Parameters:
    `element` - The element to which the stereotype is applied.
    `stereotype` - The stereotype.
    `propertyName` - The name of the stereotype property.
    `value` - The new value.
  Returns:
    `true` if the value was successfully set; `false` otherwise.

### getOwningElement

    protected static Element getOwningElement(Element element,
                                              org.eclipse.emf.ecore.EClass eClass,
                                              boolean resolve)

### getOwnedAttributes

    protected static org.eclipse.emf.common.util.EList<Property> getOwnedAttributes(Type type)

### getOwnedOperations

    protected static org.eclipse.emf.common.util.EList<Operation> getOwnedOperations(Type type)

### getETypeParameters

    protected static org.eclipse.emf.common.util.EList<org.eclipse.emf.ecore.ETypeParameter> getETypeParameters(org.eclipse.emf.ecore.EObject eObject)

### getRedefinedFeatures

    protected static org.eclipse.emf.common.util.EList<Feature> getRedefinedFeatures(Feature feature)

### isRedefinitionValid

    protected static boolean isRedefinitionValid(Feature redefiningFeature,
                                                 Feature redefinedFeature)

### findValidRedefinitions

    protected static <F extends Feature> java.util.Collection<F> findValidRedefinitions(F redefiningFeature,
                                                                                        java.lang.String name)

### findValidRedefinitions

    protected static <F extends Feature> java.util.Collection<F> findValidRedefinitions(java.util.Collection<F> redefinedFeatures,
                                                                                        F redefiningFeature,
                                                                                        java.lang.String name,
                                                                                        Classifier redefinitionContext)

### isSubsetValid

    protected static boolean isSubsetValid(Property subsettingProperty,
                                           Property subsettedProperty)

### findValidSubsets

    protected static java.util.Collection<Property> findValidSubsets(Property subsettingProperty,
                                                                     java.lang.String name)

### findValidSubsets

    protected static java.util.Collection<Property> findValidSubsets(java.util.Collection<Property> subsettedProperties,
                                                                     Property subsettingProperty,
                                                                     java.lang.String name,
                                                                     Classifier subsettingContext)

### merge

    public static void merge(Package package_,
                             java.util.Map<java.lang.String,java.lang.String> options)

  Merges the contents of (all of) the packages merged by the specified package using the specified options. If a supported option is not specified, it will be defaulted to `OPTION__IGNORE`.

  Parameters:
    `package_` - The receiving package.
    `options` - The options to use.

### merge

    public static void merge(Package package_,
                             java.util.Map<java.lang.String,java.lang.String> options,
                             org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                             java.util.Map<java.lang.Object,java.lang.Object> context)

  Merges the contents of (all of) the packages merged by the specified package using the specified options, reporting problems to the specified diagnostics, within the specified context. If a supported option is not specified, it will be defaulted to `OPTION__REPORT`.

  Parameters:
    `package_` - The receiving package.
    `options` - The options to use.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.

### convertToEcore

    public static java.util.Collection<org.eclipse.emf.ecore.EPackage> convertToEcore(Package package_,
                                                                                      java.util.Map<java.lang.String,java.lang.String> options)

  Converts the specified package (and its contents) to Ecore using the specified options. If a supported option is not specified, it will be defaulted to `OPTION__IGNORE`.

  Parameters:
    `package_` - The package to convert.
    `options` - The options to use.
  Returns:
    An Ecore representation of the package.

### convertToEcore

    public static java.util.Collection<org.eclipse.emf.ecore.EPackage> convertToEcore(Package package_,
                                                                                      java.util.Map<java.lang.String,java.lang.String> options,
                                                                                      org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                                                                      java.util.Map<java.lang.Object,java.lang.Object> context)

  Converts the specified package (and its contents) to Ecore using the specified options, reporting problems to the specified diagnostics, within the specified context. If a supported option is not specified, it will be defaulted to `OPTION__REPORT`.

  Parameters:
    `package_` - The package to convert.
    `options` - The options to use.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.
  Returns:
    An Ecore representation of the package.

### convertToEcore

    public static java.util.Collection<org.eclipse.emf.ecore.EPackage> convertToEcore(Profile profile,
                                                                                      java.util.Map<java.lang.String,java.lang.String> options)

  Converts the specified profile (and its contents) to Ecore using the specified options. If a supported option is not specified, it will be defaulted to `OPTION__IGNORE`.

  Parameters:
    `profile` - The profile to convert.
    `options` - The options to use.
  Returns:
    An Ecore representation of the profile.

### convertToEcore

    public static java.util.Collection<org.eclipse.emf.ecore.EPackage> convertToEcore(Profile profile,
                                                                                      java.util.Map<java.lang.String,java.lang.String> options,
                                                                                      org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                                                                      java.util.Map<java.lang.Object,java.lang.Object> context)

  Converts the specified profile (and its contents) to Ecore using the specified options, reporting problems to the specified diagnostics, within the specified context. If a supported option is not specified, it will be defaulted to `OPTION__REPORT`.

  Parameters:
    `profile` - The profile to convert.
    `options` - The options to use.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.
  Returns:
    An Ecore representation of the profile.

### convertFromEcore

    public static java.util.Collection<Package> convertFromEcore(org.eclipse.emf.ecore.EPackage ePackage,
                                                                 java.util.Map<java.lang.String,java.lang.String> options)

  Converts the specified Ecore package (and its contents) to UML using the specified options.

  Parameters:
    `ePackage` - The Ecore package to convert.
    `options` - The options to use.
  Returns:
    A UML representation of the Ecore package.

### convertFromEcore

    public static java.util.Collection<Package> convertFromEcore(org.eclipse.emf.ecore.EPackage ePackage,
                                                                 java.util.Map<java.lang.String,java.lang.String> options,
                                                                 org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                                                 java.util.Map<java.lang.Object,java.lang.Object> context)

  Converts the specified Ecore package (and its contents) to UML using the specified options, reporting problems to the specified diagnostics, within the specified context.

  Parameters:
    `ePackage` - The Ecore package to convert.
    `options` - The options to use.
    `diagnostics` - The chain of diagnostics to which problems are to be appended.
    `context` - The cache of context-specific information.
  Returns:
    A UML representation of the Ecore package.

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