如何将 xtext DSL 元素转换为 XML?

How can I transform the xtext DSL elements into XML?

我使用 xtext 创建了一个语法,并生成了 DSL。现在,我想将 DSL 元素(符合语法的程序)转换为 XML 元素。所以,我想知道是否有一个框架允许使用 Java 来做到这一点。我可以使用 eclipse 编辑器“Sample Reflective Ecore Model Editor”打开具有 DSL 扩展名的文件,并且可以可视化 DSL 的元素。

您的意思是向 Capella 模型转型?那么我建议不要使用 XML,而是将 Capella EMF 模型与您的 Xtext RCP 捆绑在一起,并根据 EMF 进行模型到模型的转换(我建议使用 Xtend,但可以使用 QVT、Acceleo 等,也是)

我找到了我要找的东西。我正在使用 Xtend 和 Xtext。编译语法后会生成一个“.xtend”文件。该文件包含一个名为 doGenerate 的方法。在这里,我将符合其 xtext 语法的代码转换为 Capella XML,并将其直接注入到“melodymodeller”Capella 项目文件中。

谢谢大家的回答。