Hi, maybe this needs to be a feature request, but here is my use case:
I'm using StarUML to document a set of Swift (Apple iOS) libraries, that my team is producing. These libraries have dependencies on the Apple frameworks (Foundation, UIKit, etc.), and some 3rd-party frameworks from Github. In my project hierarchy, I have one parent Model, then few child Packages (Apple SDK, 3rdParty SDK, MySDK). Each Package has its internal frameworks defined as Modules.
For convenience, I want to be able to maintain the .mdj files for the Apple frameworks independently from my own library documentation. This is because I create a lot of projects with dependencies on the Apple SDK libraries. And, since the Apple SDK is enormous, and I am documenting it mostly on an as-needed basis, to support Sequence Diagrams or class/protocol inheritance, I need to be able to propagate changes to the dependent projects frequently.
Logically, this seems to mean that I should maintain the Apple SDK Package in an independent project, and then Export/Import it as a Fragment into the dependent projects.
The issue I see, is that there is no concept of Fragment versioning or merging:
- If you import 'AppleSDK.mfj' twice into a dependent project, you get two copies of the fragment
- If you delete the old version of the Fragment, to be replaced with the new version of Fragment, then any UML links (dependencies, generalizations, aggregations, etc.) which were defined to UML components on the previous Fragment are also deleted and lost
Is there a better way to integrate Packages or Models from multiple projects into a single project than Fragments? And, is there a better way to update the contents of a Fragment, once it's been integrated into a project?
Thanks,
Stan
Mobile Architect, SAP