Łączenie Xtext z generatorem kodu StringTemplate

W moim obecnym projekcie próbuję połączyć specyfikację DSL napisaną w xtext i generator kodu napisany w StringTemplate.

na przykład składnia mojej specyfikacji DSL jest następująca. Wprowadzam te informacje za pomocą miłych edytorów udostępnianych przez xText.

structs:
    TempStruct
        tempValue : double;
            unitOfMeasurement : String;

abilities :
    sensors:    
        TemperatureSensor
            generate tempMeasurement : TempStruct;
            attribute responseFormat : String;  

Gramatyka wyżej wymienionej specyfikacji DSL jest następująca:

       VocSpec:

          'structs' ':'
          (structs += Struct)+

          'abilities' ':'
           ('sensors' ':' (sensors += Sensor)+ )+ 
         ;

      Sensor:
          name = ID
          ((attributes += Attributes ) |
          (sources += Sources))* 
          ;

     Sources:
          'generate' name=ID ':' type = Type ';' 
           ;

     Attributes:
         'attribute' name=ID ':' type = Type ';' 
           ; 

    Struct:
          name = ID
          (fields += Field)+ 
         ;

    Field:
         name=ID ':' type += Type ';' 
        ;

XText generuje model semantyczny odpowiadający wyżej wymienionej Specyfikacji. W naszym przykładzie xText generuje model semantyczny, który zawiera pliki, takie jakstruct.java, Field.java, Attribute.java, Sensor.javaitd.

Widzę wyraźnie, że ten semantyczny model można powiązać zStringTemplate plik. TheStringTemplate plik pobiera obiekt klasy. Na przykład,StringTemplate plik trwaTemperatureSensor (instancja Sensor) jako Input i wygeneruj kod Java.

Moje pytanie brzmi: jak mogę utworzyć instancję modelu semantycznego (generowanego przez xText) i co muszę zrobić, aby połączyć się z plikami StringTemplate?

questionAnswers(1)

yourAnswerToTheQuestion