blob: 9f6335d2de5818cb2c0c803ca7a7222a50fcc4a4 [file] [log] [blame]
/*
* Copyright (c) 2011 CEA 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:
* CEA - initial API and implementation
*
*/
package org.eclipse.uml2.uml.profile.l2;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Model Library</b></em>'.
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
* A package that contains model elements that are intended to be reused by other packages. Model libraries are frequently used in conjunction with applied profiles. This is expressed by defining a dependency between a profile and a model library package, or by defining a model library as contained in a profile package. The classes in a model library are not stereotypes and tagged definitions extending the metamodel. A model library is analogous to a class library in some programming languages. When a model library is defined as a part of a profile, it is imported or deleted with the application or removal of the profile. The profile is implicitly applied to its model library. In the other case, when the model library is defined as an external package imported by a profile, the profile requires that the model library be there in the model at the stage of the profile application. The application or the removal of the profile does not affect the presence of the model library elements.
* <!-- end-model-doc -->
*
* <p>
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.uml2.uml.profile.l2.ModelLibrary#getBase_Package <em>Base Package</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.uml2.uml.profile.l2.L2Package#getModelLibrary()
* @model
* @generated
*/
public interface ModelLibrary
extends EObject {
/**
* Returns the value of the '<em><b>Base Package</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Base Package</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Base Package</em>' reference.
* @see #setBase_Package(org.eclipse.uml2.uml.Package)
* @see org.eclipse.uml2.uml.profile.l2.L2Package#getModelLibrary_Base_Package()
* @model required="true" ordered="false"
* @generated
*/
org.eclipse.uml2.uml.Package getBase_Package();
/**
* Sets the value of the '{@link org.eclipse.uml2.uml.profile.l2.ModelLibrary#getBase_Package <em>Base Package</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Base Package</em>' reference.
* @see #getBase_Package()
* @generated
*/
void setBase_Package(org.eclipse.uml2.uml.Package value);
} // ModelLibrary