Issue 6161: Clarify that profiles can contain model libraries (uml2-superstructure-ftf) Source: NIST (Dr. Conrad Bock, conrad.bock(at)nist.gov) Nature: Clarification Severity: Significant Summary: The definition of <<modelLibrary>> says it is: A package that contains model elements which are intended to be reused by other packages. A model library differs from a profile in that a model library does not extend the metamodel using stereotypes and tagged definitions. A model library is analogous to a class library in some programming languages. However, profiles can contain model libraries. UML 1.x has an explicit dependency to model this (called <<modelLibrary>> also). It should be clarified that in 2.0 this is done by including model library pacakages in profile packages. The above text should be clarified. Suggestion: A package that contains model elements which are intended to be reused by other packages. A model library can be contained in a profile package, but the classes in a model library are not stereotypes stereotypes and tagged definitions extending the metamodel. A model library is analogous to a class library in some programming languages. Resolution: see above Revised Text: Actions taken: August 30, 2003: received issue March 8, 2005: closed issue Discussion: Discussion: (Pete) - If a Profile contains a ModelLibrary what is the effect of applying and removing the profile? Is it just like creating/deleting the elements? If a Profile is applied, removed and then re-applied then do the elements have the same identity? - Does this differ if the ModeLibrary is imported as opposed to contained? And what if 2 applied Profiles both import the same ModelLibrary? - Can the elements within the ModelLibrary itself be stereotyped by the Stereotypes in that Profile? (Philippe) Replace the text for in the glossary entry Model library (pg. 11): A package that contains model elements which 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. Replace the text for in the appendix B table entry for Model library (pg. 595): A package that contains model elements which 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 of Annotations:===== Name: Conrad Bock Company: NIST mailFrom: conrad.bock@nist.gov Nature: Clarification Severity: Critical Subject: Clarify that profiles can contain model libraries The definition of <> says it is: A package that contains model elements which are intended to be reused by other packages. A model library differs from a profile in that a model library does not extend the metamodel using stereotypes and tagged definitions. A model library is analogous to a class library in some programming languages. However, profiles can contain model libraries. UML 1.x has an explicit dependency to model this (called <> also). It should be clarified that in 2.0 this is done by including model library pacakages in profile packages. The above text should be clarified. Suggestion: A package that contains model elements which are intended to be reused by other packages. A model library can be contained in a profile package, but the classes in a model library are not stereotypes stereotypes and tagged definitions extending the metamodel. A model library is analogous to a class library in some programming languages.