【问题标题】:How can I transform the xtext DSL elements into XML?如何将 xtext DSL 元素转换为 XML?
【发布时间】:2021-12-20 14:45:02
【问题描述】:

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

【问题讨论】:

  • 您是指特定的 xml 还是 xmi 表示?使用示例反射 ecore 模型编辑器应该可以工作 ootb(如果你不使用 xbase)
  • 如果我得到了 xmi 表示,那将非常有帮助,因为我将能够使用 Acceleo 来进行 xml 的转换。
  • 所以您对不同于 xmi 的 xml 感兴趣。您还应该能够直接使用加速与 xtext
  • 是的,我想将 xmi 数据转换为符合无伴奏合唱建模工具的 XML 数据,以便在无伴奏合唱图形图中可视化转换后的元素

标签: java xml eclipse transformation xtext


【解决方案1】:

您的意思是对 Capella 模型的转变吗?然后我建议不要使用 XML,而是将 Capella EMF 模型与您的 Xtext RCP 捆绑在一起,并基于 EMF 进行模型到模型的转换(我建议 Xtend,但也可以使用 QVT、Acceleo 等)

【讨论】:

    【解决方案2】:

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

    谢谢大家的回答。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 2017-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多