In looking at this further, I don't think ElementImport (or its Package equivalent Permission <<import>>) is the right mechanism for profiles.
I think what we want to use is Dependency <<appliedProfile>> in UML 1.4 (see Section 2.14.2.1 of the UML 1.4 spec) which will become ProfileApplication associations in UML 2.x (see Section 18.3.5 of the UML 2.1.1 spec). Profiles can have other profiles applied, so an EJB profile could have a Java profile applied to it, allowing it to extend the Java profile. The standard UML 1.4 profile (i.e. the elements in Appendix A UML Standard Elements) doesn't need to be applied explicitly, in my opinion, but instead can always be assumed to be applied (see Annex C of UML 2.1.1 for some text which describes this). I've completed most of the work on the XmiReferenceResolver/XmiReferenceProvider which is needed to support cross XMI file references, but it looks like it's not really going to be that useful for profiles per se. maas - If you modify your profile management code to apply Dependencies with <<appliedProfile>> stereotypes to the top level Model element of the user model. I'll make sure that the project loading code looks for those Dependencies and loads the given profiles. The profiles can have other profiles applied recursively, but you can also apply multiple profiles independently if they are not related to each other. The profile names should be relative to some virtual profile library, not absolute file names, eg argouml-v026.xmi or java/ejb-v1.xmi. I think it would be a good idea to include a version in the naming scheme so that multiple versions can be distinguished. The other remaining pieces are to teach the various search methods (e.g. find a stereotype) to look in multiple profiles and to teach the file saving code to recognize profile derived elements and save references to them instead of saving them explicitly (most of this will happen automatically). For background reading, I'd recommend reading Chapter 18 of the UML 2.1.1 spec to see where things will be evolving to in the future and this Rational/IBM article http://www.ibm.com/developerworks/rational/library/05/0906_dusko/ for a user level view of profiles in another tool. Tom > -----Original Message----- > From: Tom Morris [mailto:[EMAIL PROTECTED] > Sent: Saturday, July 28, 2007 4:48 PM > To: '[email protected]' > Subject: RE: [argouml-dev] ElementImport (Was: Profiles and > cross XMI file references) > > > > Does it support linking elements in different models? > > I tryied it and it seems to took for elements in the user's > main model > > It should support linking between different models. The > issue is that the other model needs to be loaded and we don't > currently have a way to have multiple models (except for the > profile model) loaded at once. > > The next step is to implement a "open readonly" or "load for > reference" or some similar type of function, but we'll also > probably have to fix up some of the methods which create the > list of elements for the user to select from because many of > them assume that the search should start at a single root > model (the user's model), which won't work for this type of > configuration. > > Perhaps in the short term I'll try to link the profiles for > you by hand. I'll see if I can work on it today or tomorrow. > > Tom > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
