Hi Michiel,
1. Exactly what kind of elements can be a root element? From what I understand from the specification, a package can be a
container. "Model" and "Profile" elements are specializations of "Package". So the possible containers in UML are: Package, Model and Profile.
The Element (page 66 in Superstructure) has a constraint "self.mustBeOwned() implies owner->notEmpty()" and defines the operation mustBeOwned() to return true. The only subclass of Element that overrides mustBeOwned() to return false is Package. So only Package and it's specializations (Model and Profile) can be have no owner and be root elements.
2. It may seem easy to add this functionality, but how do we make clear to the user that he can not create a connection (of any kind - association, dependency,...) between modelelements from different root models?
IMO, there is no problem to use model elements between different root containers. It's like using elements from two different packages. (One can import the relevant elements or/and packages or use fully qualified names of the elements). IMO, one can use elements from different resources (like making an association between a class from resource A and another class from resource B) the same way as using elements from different packages in the same resource. This is already implemented in Eclipse UML2 plugin. :), because I never talked with anyone about these things and I just learned them, I would like a confirmation if someone knows better the topic, please.
Up until now, this problem did not exist, since having 2 root models would require different projects.
IMO an enhancement to work with multiple projects or root containers would be ideal. I can try to take advantage of what's already implemented in Eclipse UML2 plugin to support these features in the ArgoUML model subsystem.
Hence, what is the relation with the Project, and zargo file?
A project would still work the same way (using methods - that will be deprecated - from the model subsystem), but if it would be possible to use the new features also if all works out well. Bogdan,
Regards, Michiel ----- Original Message ----- From: "Bogdan Ciprian Pistol" <[EMAIL PROTECTED]> To: "Tom Morris" <[EMAIL PROTECTED]>; "ArgoUML Developers" <[email protected]> Sent: Friday, July 06, 2007 6:04 PM Subject: [argouml-dev] UML model root > Hello, > > The UML element: Model (defined in superstructure at page 610) can be > used inside a package. > It's possible to have hierarchies of Model elements and it's possible > to have Model elements as siblings (not contained in any container) in > a resource. > > I tested this, and an example of the XMI serialization would be: > > <?xml version="1.0" encoding="UTF-8"?> > <xmi:XMI xmi:version="2.1" > xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:uml="http://schema.omg.org/spec/UML/2.1.1" > xsi:schemaLocation="http://schema.omg.org/spec/UML/2.1.1 > http://www.eclipse.org/uml2/2.1.0/UML"> > > <uml:Model xmi:id="_Rsc0MCvZEdyBwvymrycfVw"/> > > <uml:Model xmi:id="_RsmlMCvZEdyBwvymrycfVw"/> > > </xmi:XMI> > > So it's possible to have more than one root Model element. > > Also, it's possible to have any container as a root element: a > package, a profile, a model. > > IMO, ArgoUML should be flexible and if the user wants it should model > any of these possibilities. Also, when we have package merge, it would > be very nice to use multiple resources with package increments and > then merge all of them in one package. > For this functionality ArgoUML should work with any container as the > root element. > > What's your opinion about this? > > The org.argouml.model.ModelManagementFactory uses one root model. One > solution would be to support as deprecated methods the > setRootMoel()/getRootModel() (not to break anything), but also support > multiple root containers and any kind of root container. > > Bogdan, > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. Version: 7.5.476 / Virus Database: > 269.10.1/888 - Release Date: 6/07/2007 6:36 > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
