Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

TCS/TCS Toolkit Tutorial

< TCS
Revision as of 17:48, 26 February 2007 by Freddy.allilaire.univ-nantes.fr (Talk | contribs) (created TCS Tookit Sample Project Tutorial page)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

< To: TCS

TCS Tookit Sample Project Tutorial

This wiki page is a tutorial to help for using the first beta version of the TCS Toolkit available here.

Content

The project "TCSSample" contains two folder:

  • TCSToolkit contains all the required files for using TCS
  • SampleDSL contains a complete example of use case for TCS

Listing of SampleDSL folder:

  • Metamodel/AddressBook.km3: AddressBook metamodel in KM3 syntax
  • Metamodel/AddressBook.ecore: AddressBook metamodel
  • SampleExtraction/build.xml: Ant script for AddressBook extraction (model to text)
  • SampleExtraction/sample.adb.ecore: sample model (to test extraction)
  • SampleInjection/build.xml: Ant script for AddressBook injection (text to model)
  • SampleInjection/sample.adb: sample file using AddressBook grammar (to test injection)
  • TCS/AddressBook.tcs: TCS file for AddressBook
  • TCS/AddressBook-importer.jar: AddressBook injector
  • TCS/AddressBook.tcs.ecore: AddressBook extractor
  • SampleDSL_ExtractorCreation.xml: Ant script to create AddressBook extractor
  • SampleDSL_InjectorCreation.xml: Ant script to create AddressBook injector

Tutorial

How to use this Sample Project for my own DSL?

First, you should create your metamodel by using the KM3 syntax. Next, you should generate the corresponding Ecore metamodel with the KM3 action "Inject KM3 to Ecore metamodel" available in the context menu. Then, you can create the textual concrete syntax (the tcs file) for your DSL.

Now, you are ready to generate the injector and the extractor for your DSL by using the generic Ant scripts available.

Back to the top