description <http://ua.be/drivetrain/description/ftg#> as ftg {
	uses <http://ua.be/sdo2l/vocabulary/base#> as base
	uses <http://ua.be/sdo2l/vocabulary/ftg#> as ftg


	// Formalisms used in the FTG
	// OBS: they should be actually references to artifact types defined in a metamodel

	ci text-document-def : ftg:Formalism [
		base:hasName "Text Document"
	]

	ci text-document2-def : ftg:Formalism [
		base:hasName "Text Document"
	]

	ci profile-def : ftg:Formalism [
		base:hasName "Profile"
	]

	ci script-def : ftg:Formalism [
		base:hasName "Script"
	]

	ci model-def : ftg:Formalism [
		base:hasName "Model"
	]

	ci code-def : ftg:Formalism [
		base:hasName "Code"
	]

	ci tabular-data-def : ftg:Formalism [
		base:hasName "Tabular Data"
	]

	ci tabular-data2-def : ftg:Formalism [
		base:hasName "Tabular Data"
	]

	// Transformations

	ci setup-profile-def : ftg:Transformation [
		base:hasName "Setup Profile"
		ftg:isInputtedBy text-document-def
		ftg:isInputtedBy text-document2-def
		ftg:outputs profile-def

	]

	ci generate-control-parameters-def : ftg:Transformation [
		base:hasName "Generate Control Parameters"
		ftg:isInputtedBy profile-def
		ftg:isInputtedBy script-def
		ftg:outputs model-def
	]

	ci build-control-settings-def : ftg:Transformation [
		base:hasName "Build Control Settings"
		ftg:isInputtedBy model-def
		ftg:isInputtedBy text-document2-def
		ftg:outputs code-def
	]

	ci run-experiment-def : ftg:Transformation [
		base:hasName "Run Experiment"
		ftg:isInputtedBy code-def
		ftg:outputs tabular-data-def
		ftg:outputs tabular-data2-def
	]

	ci verify-data-def : ftg:Transformation [
		base:hasName "Verify Data"
		ftg:isInputtedBy tabular-data-def
		ftg:isInputtedBy tabular-data2-def
	]

}
