It is obvious that OpenAPI was created to be used from inside of MPS. Then you have to use base language to operate it.
However I would like to use openapi from another application. I assume that importing a couple of jar-s and knowing how to bootstrap (i.e. how to create a new SRepository instance) would allow me to operate on MPS model programmatically, in particular I could get access to an existing MPS project.
Well, however this way of using openapi is not documented. Mainly I need to know:
1. Which jars I need ?
2. How to create a new SRepository instace having a given location of the project in the filesystem.
3. Am I not missing something important that makes the whole idea impossible ?
It probably should be said that I consider this question actually important for the whole future of MPS project. The scenario is: when my DSL built with MPS is not about EXECUTION, but about MODELLING, then the final result of what I want is the model expressed as data structures in target programming language. This language not necessarily being java. Well, I know I can possibly expost jar encapsulation of target structures and use this jar from inside MPS, so the transformation will happen via "generators" framework.
In practice it is less then optimal, for the first reason coming from the fact that I am using another programming language (yes, JVM based). And while I see MPS as a nice way to build my DSL, I want to limit my MPS base-lang code only to building the DSL. Once I get the resulting model, I want to process is on my custom platform.
From my perspective MPS being "open" is only via "openapi" usable from everywhere, not only from inside of MPS runtime.
Thanks for any help !