The ORM Foundation

Get the facts!

Multiple Schemas

Last post Wed, Apr 24 2019 17:21 by Matthew Curland. 2 replies.
Page 1 of 1 (3 items)
Sort Posts: Previous Next
  • Tue, Mar 5 2019 16:37

    • PxPete
    • Top 500 Contributor
    • Joined on Fri, Nov 30 2018
    • Posts 1

    Multiple Schemas

     Hi I am exploring the possibility of splitting a growing design over multiple models/schemas and see there has been no comments on this for many years. Does the latest (VS2017) version have improved support for this feature? If it does is there any documentation?



  • Tue, Mar 5 2019 17:29 In reply to

    • Ken Evans
    • Top 10 Contributor
    • Joined on Sun, Nov 18 2007
    • Stickford, UK
    • Posts 798

    Re: Multiple Schemas

     Hi Pete,

    Not sure exactly what you mean by "multiple schemas".

    "Splitting a large model" sounds like a solution to an unstated problem.
    Please clarify by giving more information on the problem that you are trying to solve.

    What is it that you cannot do by spreading your model over multiple pages?  

    FYI, this is a list of the 74 issues that have so far been resolved in NORMA for Vs2017..





  • Wed, Apr 24 2019 17:21 In reply to

    Re: Multiple Schemas

    Hi Pete,

    A lot of the limitations here are due to the underlying technology that NORMA is built on. The Microsoft Modeling Framework (formerly DSL tools) is an in-memory representation of the data with no native integration with external data sources (either other DSL Store objects or external databases). This means that any live coordination between models would be an extensive extension to or the current system or a flat-out rewrite on a different technology stack.

    Having said that, there are some 'helps' in the tool that can make this easier. Basically, the slowest loading part of the system is the diagrams, so if you move elements between model files you do not want to take the diagrams. The cross-model drag/drop support also works with groups, so if you create a new group (from the Groups node in the model browser) and add in object types and fact types you want to move to another model you can then drag the group instead of the diagram to the other model.

    A subsequent drag of the same group will update the existing items. However, please note that the integration is pattern-based and the internal ids from the original model are not kept on drag. Therefore, if you make a significant change to an object type (change the name, change the id, etc.) or fact type (reading change), the drag may not associate the new object with the old one. Therefore, for this type of change, you would need to manually make the corresponding change in the target model as well.


    PS I had an external tool years ago that added some automation to this process (including deletion support), but it was never totally stable and would need significant maintenance work to be at a point where I could let it off my machine.

Page 1 of 1 (3 items)
© 2008-2020 The ORM Foundation: A UK not-for-profit organisation -------------- Terms of Service