Comments (4)
This is due to the fact that we store models in XMI, not in text. Thus the model is parsed/serialized on each save.
To avoid that, the solution would be to store models in textual syntax, in a standard XText mode.
This implies that the XText syntax must be flawless.
Also, storing models in text prevents the use of Eclipse CDO, but this might not be relevant for us.
from ecore.
I don't know what is the interest of storing models in XMI files.
Maybe other members of the project need it.
A dirty workaround would be to hack the save process.
- Intercept the new serialized text, remove all the spaces and line breaks...
- ... (re)load the current text content, remove all the spaces and line breaks...
- ... and compare it (optimistic hypothetisis: the serializer does not modify elements order).
If it is the same, we do not write into the file.
And normally, it should be the same...
No matter how it is done, the XText editor looses its interest if it reformats all the code. 😢
PS: unlike the text format, I think almost no one will edit XMI directly.
So, if I had to choose one side, I would do generate XMI from the textual reprensentation. 🚸
from ecore.
Then, there are elements I don't know much about... because I did not search.
As an example, maybe the XMI is used by the OCCIE modeler. How does it work when both editors are open?
from ecore.
In EMF, the default serialization format is XMI.
XMI files can be read by Eclipse tools we use, e.g., Sirius, Acceleo, etc.
Saving extensions in text format could be incompatible with Eclipse tools we use.
But saving extensions in text format allows one to add comments, identations, and so on.
So we should find a solution supporting text format but also compatibility with used Eclipse tools.
from ecore.
Related Issues (20)
- [Infra-vmware connector]Eclipse dependencies problem with MartServer and the vmware connector HOT 3
- [Cloud designer]Add a way to manage ui like dialog box, progress bar etc. without coding it in connectors HOT 2
- Create a generic "new example" wizard for OCCI extensions HOT 2
- Add OCCI SLA extension into the CloudDesigner product.
- Exception: Add new attributes on the existing extension HOT 1
- Docker Studio - Robustize synchronize
- Docker Studio - clean ContainerLinks of deleted containers HOT 1
- Docker Studio - action-wide cache of docker state HOT 1
- DockerStudio - display error dialog if Docker call error HOT 1
- DockerStudio - remove XTend HOT 1
- DockerStudio - do calls to Docker asynchronously HOT 1
- DockerStudio - v2 with same level of functionality as custom v1 HOT 1
- [OCCI Platform] typo
- Docker Studio - Unable to create new representation HOT 1
- Docker Studio - Commands not working on windows HOT 1
- Cloud Designer : Lack of documentation about clouddesigner HOT 1
- Mart : example in the README.md is not working HOT 1
- Docker Studio : performance issues due to property view HOT 1
- Docker representation fail HOT 3
- Docker : No diagram extension in representation.aird file in docker extension project HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ecore.